WordPress 使用 mod_remoteip 顯示代理 IP 位址

WordPress 使用 mod_remoteip 顯示代理 IP 位址

我之前已經設定過它並且它可以在其他伺服器上運行,但我一生都無法弄清楚為什麼它在這種情況下不起作用,儘管我有一個可能的理論。所有這一切都在亞馬遜網路服務中。

因此,在本例中,我們使用 IIS 8 在 Windows 伺服器上託管主網站。主站點位於VPC中,支援多個IP位址。該部落格位於 VPC 之外。

其他設定(有效)都使用 nginx 作為反向代理伺服器而不是 IIS,且代理程式和伺服器位於同一 VPC 中。這真的很重要嗎?

從工作配置來看:

LoadModule remoteip_module /usr/lib/apache2/modules/mod_remoteip.so

RemoteIPHeader X-Forwarded-For
RemoteIPInternalProxy 172.31.x.x/32

非工作配置:

LoadModule remoteip_module /usr/lib/apache2/modules/mod_remoteip.so

RemoteIPHeader X-Forwarded-For
RemoteIPInternalProxy 54.2x.x.x

我也嘗試過它的變體,例如:

RemoteIPTrustedProxy 54.2x.x.x # tried /32 and /24
RemoteIPInternalProxy 54.x.x.x/32 # also tried /24
RemoteIPTrustedProxy www...

使用測試 PHP 頁面來查看它是否正常工作,我從以下位置看到了這一點print_r($_SERVER);

[HTTP_X_FORWARDED_BY] => www.....
[HTTP_X_FORWARDED_FOR] => x.x.x.x:x
[SERVER_ADDR] => 10.230.x.x
[SERVER_PORT] => 80
[REMOTE_ADDR] => 54.2x.x.x

PHP getheaders 函數的輸出:

[X-Forwarded-By] => www....
[X-Forwarded-For] => x.x.x.x:x

文件用於作為 Intranet IP 位址的mod_remoteip清單。172.16/12該模組是否真的因為未偵測到 Intranet 區塊而拒絕正常運作?我在錯誤日誌中也找不到任何相關內容。

這樣做似乎很愚蠢,但這是唯一有意義的理論。

另外值得注意的是,因為我知道有人會問:我們在設定部落格伺服器後設定了 VPC,只是還沒有完成在 VPC 內重新啟動它的工作。我試圖讓它在沒有它的情況下正常工作,但如果這是問題所在,那麼我們會考慮這樣做。

謝謝。

相關內容