1

首先为写得不好的标题道歉。无法在一个班轮中解释这个问题。

我有一个简单的 htaccess 规则设置有一些花哨的 url。我还使用它来使用控制器组合和加载我的所有 css 文件。

htaccess 如下

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(style\.css) Asset [L]

RewriteRule ^(.*)$ index.php?rt=$1 [L,QSA]

index.php 是一个简单的路由路由到正确的控制器,正如您所见,当 style.css 被调用时,它将请求传输到资产控制器。然后我遇到的问题是如何使用 css 文件加载图像。重写条件也适用于图像,这是我想要避免的。

有没有人遇到过类似的问题?

任何帮助都非常感谢提前。

4

1 回答 1

2

将 .htaccess 更改为

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?rt=$1&%{QUERY_STRING} [L]

在控制器中检查它是否是 $_GET['rt'] 中的 style.css

如果您想在 mod_rewrite 级别将 style.css 更改为 Asset,请使用:

RewriteEngine on
RewriteCond %{REQUEST_URI} style\.css
RewriteRule .* index.php?rt=Asset&%{QUERY_STRING} [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?rt=$1&%{QUERY_STRING} [L]

Options -Indexes # this line is optional
于 2013-11-02T00:29:30.733 回答