我刚刚在新的 Windows 机器上设置了 Apache v2.4、PHP 和 MySQL。我只对httpd.conf
. 我包括httpd-vhosts.conf
,它定义了 2 个自定义站点(我从中删除了默认dummy
站点),它们都是 WordPress 站点。
其中一个 WordPress 站点没有数据库,当我转到htdocs
根目录时,我看到该站点的数据库连接错误。当我注释掉DocumentRoot
虚拟主机的行时,目录列表再次出现。
以下是(按顺序)的所有 -Directory
相关行:httpd.conf
Define SRVROOT "C:/webserv/Apache24"
ServerRoot "${SRVROOT}"
<Directory />
AllowOverride none
Require all denied
</Directory>
DocumentRoot "${SRVROOT}/htdocs"
<Directory "${SRVROOT}/htdocs">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
<Directory "${SRVROOT}/cgi-bin">
AllowOverride None
Options None
Require all granted
</Directory>
这是导致问题的虚拟主机:
<VirtualHost *:80>#gutenberg
DocumentRoot "${SRVROOT}/htdocs/gutenberg"
ServerName gutenberg.squarestarmedia.ie
ErrorLog "logs/gutenberg.localhost-error.log"
</VirtualHost>
(请注意,我使用我的hosts
文件指向 ServerName)。
我应该提到我正在htdocs
从不同的驱动器对目录进行符号链接,但是我在另一台没有遇到相同问题的 Windows 机器上进行了非常相似的设置。
如何修复它以便htdocs
始终显示目录列表,即使子目录/虚拟主机有错误?