Apache根本无法访问目录(禁止403错误),无法确定原因?
我制作了一个虚拟主机:
创建:/etc/apache2/sites-available/dev.testvhost.com.conf
<VirtualHost *:80>
DocumentRoot /home/najam/projects/php/testvhost
ServerName dev.testvhost.com
</VirtualHost>
在/etc/hosts 中添加服务器名
127.0.0.1 dev.testvhost.com
执行命令:
sudo a2ensite dev.testvhost.com.conf
然后:
sudo service apache2 restart
将浏览器指向 http://dev.testvhost.com 会给出 403 禁止错误,而每次刷新时错误日志都会显示以下内容。
我非常确定导致错误的问题,因为“testvhost”文件夹位于主目录“/home/najam/projects/php/testvhost”中,当我将文件夹移动到/var/www/时,它开始工作(没有禁止的错误) (在 dev.testvhost.com.conf 中相应地修改 documentroot 路径后)
最佳答案
尝试编辑您的 dev.testvhost.com.conf
为您希望访问的目录添加 Require all granted
指令
<VirtualHost *:80>
DocumentRoot /home/najam/projects/php/testvhost
ServerName dev.testvhost.com
<Directory "/home/najam/projects/php/testvhost">
Require all granted
</Directory>
</VirtualHost>
该块由 Apache 的模块
mod_authz_core
控制。见 the docs 。关于php - 为什么当目录在家里时禁止 apache 抛出?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38353019/