我有一个 Centos 6 网页伺服器,根据虚拟主机的设置运行大约 50 个站点。
最近,我被要求限制仅从我的组织内部访问网站。
在每个虚拟主机上都有"订单拒绝,允许"工作正常,即组织外部的任何人都无法访问网站,但只有来自组织的用户才能访问网站。
我的问题是,有没有办法在 httpd.conf 上进行此设置,以便它适用于从此框提供的所有站点,而不是在每个虚拟主机上重复"订单拒绝,允许"设置。如果可以在全局服务器级别完成,有人可以告诉我如何操作。
在防火墙级别或代理级别进行限制不是一种选择,因此必须在 Web 服务器级别完成。
感谢帮助
谢谢R
是的,您可以在配置的根级别放置一个<Directory>
块,并将其应用于 Web 目录的最低公共根目录。例如,如果他们在/home 中:
<Directory "/home">
Order deny,allow
...
</Directory>
但请记住,这将适用于/home 中的任何内容,这可能是一个安全问题。您可以通过使用 DirectoryMatch 并指定仅影响网站文件夹的模式来改进这一点,例如:
<DirectoryMatch "^/home/[^/]+/public_html">
Order deny,allow
...
</DirectoryMatch>
如果您的 Web 文件夹的格式为 /home/user/public_html
.让我知道您的目录结构,我可以更新答案。