Apache-2.2

如何在 apache 中列印 x-forwared-for 值?

  • October 17, 2012

我們有一個 aws 負載均衡器。負載平衡器使用 TCP 連接 443 來加密數據。

由於負載均衡器對客戶端的 IP 進行了加密,因此在我們的 apache 日誌文件中,我們只能看到負載均衡器的 IP,而不是客戶端。即使我們在日誌格式中使用了 %{X-Forwarded-For}i。

有沒有辦法處理這個問題?

的,ELB 支持解密 SSL 請求並將純 http 請求發送回您的 Apache 後端伺服器。

ELB 將同時添加X-Forwarded-ForX-Forwarded-Proto標頭,因此您可以區分 SSL 請求和普通 http 請求。非 SSL 請求可能只有X-Forwarded-For標頭或可能將X-Forwarded-Proto標頭設置為http.

如果您的 Apache 在埠 443 上接收請求,則 ELB 無法注入任何標頭,並且您的日誌將只包含負載均衡器本身的 IP 地址。您必須在 ELB 中進行 SSL 終止才能獲取X-Forwarded-For標頭。

這裡有一個不錯的教程。這裡也有專門針對 Thawte 的答案

引用自:https://serverfault.com/questions/439204