Nginx重写干净URL的规则(CSS和JS渲染问题)

时间:2009-10-16 09:50:48

标签: url-rewriting nginx

我想为干净的URL编写nginx重写规则。

每次用户点击http://domain.com/abc/12/16/abc-def-ghi时,我都需要执行domain.com/abc.php?a=12&b=16&c=abc-def-ghi

现在我的正则表达式是正确的:

^\/abc\/(\d+)\/(\d+)\/(\w+\S+)$

且规则是

if (!-e $request_filename) {
rewrite ^\/abc\/(\d+)\/(\d+)\/(\w+\S+)$ /abc.php?a=$1&b=$2&c=$3 last;
}

规则工作正常,页面呈现但我得到一个乱码CSS。我的顶部导航栏在最左侧显示为三行栏。所以我想尽管PHP工作正常,但CSS文件存在问题。

是因为我在添加内容或编写CSS的方式中缺少了吗?使用原始URL(不适用)CSS正确呈现的规则,我看到应该看到的Nav Bar。

1 个答案:

答案 0 :(得分:0)

这可能是一个奇怪的问题,但您是否通过启用了gzip的SSL访问此CSS文件?...

几个月前我有一些问题,nginx使用了一些javascript文件(只有非常大的文件),但只有当gzip打开并且它通过SSL发送时......如果我没记错,我升级到了新的nginx的版本或关闭违规文件的gzip。