2017-03-07 79 views
1

當用戶訪問:返回與源地址變動數

/profile.php?mode=viewprofile&u=[NUMBER FROM 1 TO 4000] 

我想nginx的返回:

/memberlist.php?mode=viewprofile&u=[SAME NUMBER] 

我該怎麼辦呢?謝謝你的幫助。

回答

1

問題是你需要匹配/profile.phpmode=viewprofile這不是無關緊要nginx。有很多方法可以實現它。

您可以複製location ~\.php$塊,並添加那裏的條件重定向:

location = /profile.php { 
    if ($arg_mode = viewprofile) { 
     return 301 /memberlist.php?$args; 
    } 
    ... # add location ~\.php$ stuff here 
} 

另外,檢查$ REQUEST_URI(其中包含原始的URI包括查詢字符串),早在server塊:

if ($request_uri ~ "^/profile\.php\?mode=viewprofile&") { 
    return 301 /memberlist.php?$args; 
} 

請參閱this caution關於使用if聲明。