是否可以只允许特定网络访问特定 URL?基本上,我想将对管理区域的访问限制在本地网络。此区域的页面以 /admin 为前缀。本质上,我想禁止所有 /admin/* 公开访问。
apache 可以处理这种情况吗?
谢谢
更新
使用你的建议我得出了
<LocationMatch admin>
Order allow,deny
deny from all
Allow From 192.168.11.0/255.255.255.0
</LocationMatch>
然而,尽管我在线,却收到 403 错误。
另外,如果我把 apache 放在 haproxy 后面,这样可以吗?因为流量将从 127.0.0.1 流向 apache
更新 1
正确的指令如下
<LocationMatch admin>
Order deny,allow
deny from all
Allow From 192.168.11
</LocationMatch>
但是,apache 前面的代理问题并没有被上述方法处理,有什么方法可以克服它吗?
答案1
正如记录的那样http://httpd.apache.org/docs/2.2/mod/mod_authz_host.html,这可以在 Directory 容器内轻松完成,如下所示:
<Directory /your/document/root/admin>
Order allow,deny
allow from your.internal.network
deny from all
</Directory>