2016-11-21 200 views
0

重定向URL 301如何301網址使用的Nginx服務器

STRING?page=NBR

重定向到STRING/NBR/

在NGINX服務器。

+0

請附上您的conf。 –

+0

是的,但我可以添加什麼CONF,這樣的代碼#nginx的配置 位置/ { 改寫^ /(。*)/ $/$ 1重定向; } –

回答

0

試試吧。我認爲這些想法會幫助你。

location = STRING {  
    if ($arg_page) { return 301 STRING/$arg_page/; } 
} 

location = STRING {  
    if ($arg_page) { rewrite STRING STRING/$arg_page/ permanent; } 
} 

$ arg_name - 請求行

添加參數名稱爲例對隨機字符串:

server {  
    if ($arg_page) { return 301 $uri/$arg_page/; } 
} 

$ uri - 請求中的當前URI,規範化。 $ uri的值可能在請求處理期間改變,例如,進行內部重定向時,或使用索引文件時。

回報 ...作爲一個特殊情況,重定向URL可以被指定爲一個URI本地到該服務器,在這種情況下,完全重定向URL根據請求的方案($方案)形成和server_name_in_redirect和port_in_redirect指令。

或者:

server {  
    if ($arg_page) { return 301 $scheme://$server_name$uri/$arg_page/; } 
} 

$方案 - 請求方案,「http」或「https」開頭

$服務器名稱 - 它接受了請求的服務器的名稱

if($ arg_page) - 虛假如果一個變量的值是一個空字符串或「0」

+0

但我的STRING是隨機字符串或url的一部分,如何用任何隨機字符串替換STRING –

+0

有很多方法。例如,'location/{}'匹配您的所有網址。或者在所有地方使用「if」。並使用正則表達式來處理STRING。請包括你的配置。 – raciasolvo

+0

試試第三個例子。 – raciasolvo