nginx文件夹到cdn重定向

时间:2013-02-08 11:53:27

标签: redirect nginx directory cdn permanent

我仍然对nginx很陌生,尽管我看了这些问题的所有答案并尝试了他们所说的一切,但到目前为止还没有任何工作。

我想做这个重定向:

从     http://www.mydomain.com/folder 至     http://cdn.mydomain.com/folder

我把它放在服务器conf:

    location /folder/ {
       rewrite ^ http://cdn.mydomain.com/folder/$request_uri permanent;
    }

我想我已经到了,但仍然没有到达我错的地方。

在我的旧服务器中,在每个文件夹中使用此.htaccess可以正常工作:

    RewriteEngine On
    RewriteRule (.*) http://cdn.mydomain.com/folder/$1 [L,R=301]

提前致谢!

1 个答案:

答案 0 :(得分:0)

您目前仅匹配确切位置/folder/。您应该对其进行编辑,以匹配以/folder/开头的所有地点:

location ^~ /folder/ {

此外,您的重写有一个半错误。如果我请求http://www.mydomain.com/folder/123.png,那么您会将我重定向到http://cdn.mydomain.com/folder//folder/123.png,这很可能不正确。下面是完整的位置和重写指令。 $request_uri之后的问号确保只添加一次潜在的查询字符串。

location ^~ /folder/ {
   rewrite ^ http://cdn.mydomain.com$request_uri? permanent;
}