微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

apache virtualhostWindows不会更改DocumentRoot

如何解决apache virtualhostWindows不会更改DocumentRoot

在Apache(Windows 10)上设置vHost时,一切正常-而不是DocumentRoot。 仍然是htdocs目录,而不是我在httpd-vhosts.conf中设置的目录:

not in

我还将域添加到位于C:\ Windows \ System32 \ drivers \ etc>的hosts文件夹中。这样该部分就可以正常工作:

Listen 80
<VirtualHost *:80>
    ServerAdmin your@email.com
    DocumentRoot "C:\Test"
    ServerName www.test.test
    <Directory "C:\Test">
        Options Indexes FollowSymLinks Includes ExecCGI
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

就像在更改httpd.conf文件中的documentRoot时一样:

# localhost name resolution is handled within DNS itself.
    127.0.0.1       localhost
#   ::1             localhost
    127.0.0.1       www.test.test

它似乎有效。但这不是一个正确的解决方案...

解决方法

Apache不会自动加载它在conf目录下找到的每个文件。您需要使用Include指令来显式加载所需的内容,如:

Include conf/extra/httpd-vhosts.conf

还可以加载完整的目录,例如:

Include "C:/Data/vhosts/*.conf"

您可以使用以下命令验证正在加载哪些文件:

httpd -t -D DUMP_INCLUDES

...以及正在定义的虚拟主机:

httpd -t -D DUMP_VHOSTS

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。