【问题标题】:Nginx Rewrite rules for clean URLs (issue with CSS and JS rendering)干净 URL 的 Nginx 重写规则(CSS 和 JS 渲染问题)
【发布时间】:2011-11-23 04:49:47
【问题描述】:

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

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

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

^\/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 (w/o) 规则正确呈现 CSS,并且我看到了应该看到的导航栏。

【问题讨论】:

    标签: url-rewriting nginx


    【解决方案1】:

    这可能是一个奇怪的问题,但是您是否在打开 gzip 的情况下通过 SSL 访问此 CSS 文件?...

    几个月前我遇到了一些问题,nginx 乱码了一些 javascript 文件(只有真正的大文件),但只有当 gzip 打开并且它通过 SSL 发送时...如果我没记错的话,我升级到了新的nginx 的版本或为有问题的文件关闭 gzip。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-02-16
      • 1970-01-01
      • 1970-01-01
      • 2012-10-08
      • 2010-11-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多