所以我在文件夹htdocs/project
中有一个项目。我需要通过域project.xx
访问此项目以测试子域mod_rewrite
。为此,我修改了hosts
文件,将project.xx
映射到127.0.0.1
。
然后,我使用以下代码在apache中创建了一个虚拟主机:
<VirtualHost *:80>
ServerName project.xx
ServerAlias www.project.xx
DocumentRoot C:/xampp/htdocs/project/
</VirtualHost>
按预期方式工作,当导航到http://project.xx
时,我最终会在C:/xampp/htdocs/project/
的网站上运行。
我只是在编辑其他内容而且我发现有问题 - 导航到127.0.0.1
将也带我到我的project
网站。
如何防止虚拟主机设置影响整个localhost?当浏览器将project
作为project.xx
标题发送时,我只想转到Host
。
答案 0 :(得分:0)
正如我在#httpd IRC chanell上所了解的那样,一旦你开始使用localhost,它还要求你为本地主机本身设置虚拟主机。
这意味着在匹配域project.xx
之前,存在127.0.0.1
和localhost
缪斯的规则 - 因此,如果未指定域,则将使用默认行为:
#Rule for localhost as it normaly behaves
<VirtualHost *:80>
#IP and `localhost` domain name
ServerName 127.0.0.1
ServerAlias localhost
#The normal document root
DocumentRoot C:/xampp/htdocs/
</VirtualHost>
#Rule for your project
<VirtualHost *:80>
ServerName project.xx
ServerAlias www.project.xx
DocumentRoot C:/xampp/htdocs/project/
</VirtualHost>