Nginx
如何根據不同的引薦來源重定向我的網站?
這就是我要找的:
如果引用者包含
https://l.facebook.com/
,則將所有頁面重定向到sub.example.com/...
如果引用者包含
https://t.co/
,則將所有頁面重定向到sub2.example.com/...
我如何在我的 nginx conf 中做到這一點?
這種方法應該有效:
map $http_referer $redirect_referer { ~ ^https://l.facebook.com sub.example.com; ~ ^https://t.co sub2.example.com; default 0; } server { server_name example.com; if ($redirect_referer) { return 301 https://$redirect_referer$request_uri; } ... }
$redirect_referer
首先,我們定義一個基於 HTTP Referer 欄位內容分配值的映射。然後在
server
塊中我們檢查是否應該重定向,然後我們執行 301 重定向到目的地。在這種情況下,您可能希望使用 302 臨時重定向,但您需要考慮所有細節。