Windows 7 在本地计算机上提供多个主机/域名

Windows 7 在本地计算机上提供多个主机/域名,windows-7,vhosts,Windows 7,Vhosts,我在Windows机器上有一个本地PHP服务器,我遇到的问题是,在主根127.0.0.1/localhost中,我希望有几个文件夹/站点可以调用 目前,我可以毫无问题地执行localhost/siteA或localhost/siteB,但我想做的是分配这些位置测试域名: 例如:localhost/siteA将是siteA.dev,localhost/siteB将是siteB.dev 没有问题,因为我已经在主机文件和vhost配置文件上设置了一个 链接到根/localhost的mysites.de

我在Windows机器上有一个本地PHP服务器,我遇到的问题是,在主根127.0.0.1/localhost中,我希望有几个文件夹/站点可以调用

目前,我可以毫无问题地执行localhost/siteA或localhost/siteB,但我想做的是分配这些位置测试域名:

例如:localhost/siteA将是siteA.dev,localhost/siteB将是siteB.dev

没有问题,因为我已经在主机文件和vhost配置文件上设置了一个

链接到根/localhost的mysites.dev。所以我可以如上所述使用它

mysites.dev/siteA和mysites.dev/siteB

但我想给这些网站的每一个自己的vhost名称如上所述。因此,我添加了以下内容:

主机文件

127.0.0.1       mysites.dev
127.0.0.1       sitea.dev
vhost文件

<VirtualHost *:80>
    DocumentRoot "C:\Websites\"
    ServerName mysites.dev
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot "C:\Websites\sitea\"
    ServerName sitea.dev
</VirtualHost>

DocumentRoot“C:\Websites\”
ServerName mysites.dev
DocumentRoot“C:\Websites\sitea\”
ServerName sitea.dev
问题是,无论我调用哪一个,它们似乎都只是加载第一个,或者至少看起来是这样,但如果没有vhost详细信息,它们都会转到根目录,因此看起来宿主文件将它们指向127.0.0.1,而vhost文件似乎被忽略

那么,为了连接mty的各个本地站点,我遗漏了什么呢


已解决:请看我的答案,几天后我会将其标记为正确答案。

您的虚拟主机都在尝试捕获端口80上的任何内容:

您需要指定vhost名称以指向特定文件夹:

<VirtualHost sitea.dev:80>
    DocumentRoot "C:\Websites\sitea\"
    ServerName sitea.dev
</VirtualHost>

<VirtualHost siteb.dev:80>
    DocumentRoot "C:\Websites\siteb\"
    ServerName sitea.dev
</VirtualHost>

DocumentRoot“C:\Websites\sitea\”
ServerName sitea.dev
DocumentRoot“C:\Websites\siteb\”
ServerName sitea.dev

你可以在Apache文档中找到更多关于这方面的信息:

我确实觉得自己很愚蠢。在长时间查看之后,我注意到在配置文件中,它没有调用vhost文件,因为我将它们放在主httpd.conf中,并且它工作了

因此,我不得不在httpd.conf文件中取消注释以下内容:

   # Virtual hosts
   Include conf/extra/httpd-vhosts.conf

谢谢,但问题是它没有调用我的vhost文件,这没问题,但当我在使其工作后进行更改时,它会阻止我的网络计算机访问它们,从而使它们在本地和网络计算机上都工作。再次感谢,除非您将
sitea.dev
和其他主机添加到网络计算机上的主机文件中,否则它将无法工作。尽管他们仍然可以通过[iPAddress]/[sitea]访问它。我从一开始就将名称等添加到联网的计算机中,这是包含文件的问题,因为我无法通过这两种方法访问,谢谢