Configuration

如何在 apache 配置中測試條件?

  • January 7, 2016

我想在 apache 中測試配置。如何“調試”配置文件?例如,假設我有:

<IfModule mod_geoip.c>
   GeoIPEnable On
   GeoIPDBFile PATH_TO_LIB\GeoIP.dat
   GeoIPEnableUTF8 On
   GeoIPOutput All
</IfModule>

我可以在本地向標頭髮送假 IP 嗎?(即)我可以在本地偽造/發布除 127.0.0.1 之外的另一個 IP 嗎?

使用該配置,您不能(至少很容易)。我建議進行測試,您添加此選項:

GeoIPScanProxyHeaders On

從文件(http://dev.maxmind.com/geoip/legacy/mod_geoip2/#Proxy-Related_Directives

設置後,模組將按以下順序查看 IP 地址的其他幾個來源:

HTTP_CLIENT_IP 環境變數(由 Apache 設置)。

HTTP_X_FORWARDED_FOR 環境變數(由 Apache 設置)。標頭的 X-Forwarded-For (由代理設置)。

HTTP_REMOTE_ADDR 環境變數(由 Apache 設置)。

設置該選項進行測試並在完成後將其刪除。然後,您可以使用 curl 將任意 IP 作為 HTTP 標頭髮送,例如:

curl --header "X-Forwarded-For: 1.2.3.4" "http://your.site/path"

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