0

我的服务器中有这个规则:

url.rewrite-once = (
    ".*\.(js|ico|gif|jpg|png|css|)$" => "$0",
    "^/.*(\?.*)" => "/index.php$1",
    "" => "/index.php"
)

它可以正常工作......除了一些细节。如果我将获取信息添加到 js 或 css 文件,那么它将请求重定向到 index.php。如果我有这个:

/css/main.css

它加载css,但如果我添加:

/css/main.css?version=1234

然后它尝试加载/index.php/main.css/?version=1234

我的规则有什么问题?

4

1 回答 1

1

规则.*\.(js|ico|gif|jpg|png|css|)$,特别是$末尾的规则,表示 url必须以括号内的扩展名之一结尾。

如果你$在最后删除它,它应该可以工作。

或者,您可以使用版本参数添加特定于 css 和/或 js 的新规则:

.*\.(js|ico|gif|jpg|png|css|)\?version\=[0-9]+$
于 2013-01-31T14:29:15.017 回答