Ubuntu
無法將 Apache 伺服器狀態頁面限制為 localhost
我在 Ubuntu 上使用 Apache 2.4.18。
我想只允許從本地主機讀取伺服器狀態。
在
/etc/apache2/mods-enabled/status.conf
我有:<Location /server-status> SetHandler server-status Require ip 127.0.0.1 </Location>
我已閱讀https://httpd.apache.org/docs/2.4/howto/access.html並且我相信上述配置應該可以正常工作。我已重新啟動 Apache 以確保新配置處於活動狀態。但是,狀態頁面仍然可以從任何地方閱讀。
在
/etc/apache2/sites-enabled/mysite.conf
我有:DocumentRoot /var/www <Location /> Require all granted </Location>
我的配置有什麼問題?
據我所知,虛擬主機配置文件似乎優先於
mod_status
配置文件。實際上,您將所有內容授予
/
withinmysite.conf
:<Location /> Require all granted </Location>
這導致每個人都可以訪問
/server-status
.您必須管理
/server-status
虛擬主機配置文件本身的權限/etc/apache2/sites-enabled/status.conf
:DocumentRoot /var/www <Location /> Require all granted </Location> <Location /server-status> Require local </Location>
從那裡開始,您在其中設置的任何權限
/etc/apache2/mods-enabled/status.conf
都將被/etc/apache2/sites-enabled/status.conf
優先忽略。