我创建了一个虚拟主机,并试图通过对Require all denied
使用directory指令来禁止对它的访问。
<VirtualHost *:80>
DocumentRoot /var/www/test
<Directory /var/www/test/>
Require all denied
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
但是,用户仍然可以访问每个页面。我该怎么解决?
最佳答案
如果这些指令位于与当前请求不匹配的虚拟主机中,则它们不会执行任何操作。
virtualhost没有服务器名或服务器别名,这是将virtualhost用于请求的主要方式。
如果您认为配置被忽略,则步骤是验证此Virtualhost是否正在使用。一种简单的方法是为虚拟主机定义一个唯一的日志文件。你的看起来并不独特。
apachectl -S will quickly summarize your virtual hosts.