2017-08-09 126 views
0

我試圖將流量重定向到我們的新服務器,但舊服務器(Mac OS)中使用不區分大小寫的文件名,而新的(嵌入式)一個使用Linux(區分大小寫)。 我的問題是,從流量重定向:如何變換(重寫)在nginx的URL的一部分

http://server.com/NEW/variable_url 

http://server.com/new/variable_url

(注意下 '新')。

我希望能夠做到這一點的nginx的不作爲該服務器在嵌入式環境中運行使用Perl或LUA或其它模塊。

到目前爲止,我嘗試:

location ~* ^/new/ { 
     access_log /var/log/nginx/new.log combined; 
     rewrite ^/new/(.*)$ $1 permanent; 
    } 

沒有成功。

回答

0

解決它自己。我錯過了一個指向Web服務器的根目錄下的根指令。因此對於任何感興趣的解決方案:

location ~* ^/NEW/ { 
     root /etc/nginx/html/; 
     rewrite /NEW/(.*)$ /new/$1 permanent; 
    } 
0

也許這樣的事情?

位置/ NEW {

重寫^/NEW /(.*)$ /新;

}

+0

不工作,仍在嘗試...它不重定向到正確的頁面。 – CristianG

0

如果您想從特定鏈接/NEW/exampe1重定向流量,你可以嘗試

location =/NEW/example1 
{ 
rewrite^/new/example1 last; 
} 
+0

對不起,是我不好的問題,在這種情況下,「示例」可以是任何東西,因爲有許多網站,它不是靜態的。 – CristianG