CDN 的 Nginx 重写规则

CDN 的 Nginx 重写规则

我正在努力将 Apache 重写规则转换为 Nginx。

该规则位于内部WEBROOT/cdn/.htacces,内容如下:

RewriteRule ^[0-9]{1,6}/(.*)$ ../$1 [PT]

它的目标是获取类似这样的 URL: http://...com/cdn/123123/some/other/path.css并加载位于的文件http://...com/some/other/path.css

我尝试过以下主题的不同变化:

location /cdn { rewrite "^/[0-9]{1,6}/(.*)$" ../$1; }

我最终得到了 404。

答案1

我不太确定,但我认为你的问题就在你的位置块的开头:

location /cdn

我认为如果你尝试这样的事情:

location ^/cdn/(.*)

您将获得预期的效果。

答案2

弄清楚了:

location ^~ /cdn { rewrite "^/cdn/[0-9]{1,6}/(.*)$" /$1 break; }

相关内容