試圖讓 http://example.com/shop/donate?id=123 重定向到 http://example.com/donate/123Nginx的重寫基本的正則表達式
隨着低於我的.conf,打頂URL不會導致重定向。 .conf中的其他重定向正在工作。有什麼想法嗎?
server{
....
rewrite ^/shop/donate?id=([0-9]+)$ /donate/$1 permanent;
}
試圖讓 http://example.com/shop/donate?id=123 重定向到 http://example.com/donate/123Nginx的重寫基本的正則表達式
隨着低於我的.conf,打頂URL不會導致重定向。 .conf中的其他重定向正在工作。有什麼想法嗎?
server{
....
rewrite ^/shop/donate?id=([0-9]+)$ /donate/$1 permanent;
}
你需要躲避問號,否則它就會被解析爲正則表達式:
server{
....
rewrite ^/shop/donate\?id=([0-9]+)$ /donate/$1 permanent;
}
我補充說,仍然沒有重定向 – cactusphone 2015-04-01 20:46:58
Nginx的重寫僅適用於URL的_path_部分 – 2015-04-02 07:25:42
您可以嘗試使用$ arg_ [名]這種情況:
rewrite ^/shop/donate$ /donate/$arg_id;
爲什麼會你要這個?可能你的應用程序會更好地重定向。 – 2015-04-02 07:26:36