Apache 同一台计算机上的多个网站
我有两个网站托管在同一台机器上,为了能够访问他们从他们的域名没有任何子目录中的url我想我需要使用虚拟主机。目前我已经添加了两个虚拟主机——一个用于本地主机,另一个用于活动域 httpd vhosts.confApache 同一台计算机上的多个网站,apache,virtualhost,Apache,Virtualhost,我有两个网站托管在同一台机器上,为了能够访问他们从他们的域名没有任何子目录中的url我想我需要使用虚拟主机。目前我已经添加了两个虚拟主机——一个用于本地主机,另一个用于活动域 httpd vhosts.conf NameVirtualHost *:80 <VirtualHost *> DocumentRoot "C:\xampp\htdocs" ServerName localhost </VirtualHost> <VirtualHost *&
NameVirtualHost *:80
<VirtualHost *>
DocumentRoot "C:\xampp\htdocs"
ServerName localhost
</VirtualHost>
<VirtualHost *>
ServerAdmin admin@domain.com
DocumentRoot "C:/xampp/htdocs/ProjectA/Public"
ServerName domain.com
ErrorLog "logs/domain.com-error.log"
CustomLog "logs/domain.com-access.log" common
</VirtualHost>
问题是当我尝试访问http://localhost
我得到了domain.com
主页,但浏览器中的地址是http://localhost
我需要如何设置虚拟主机,以便访问两个项目并访问localhost的根目录?
<VirtualHost *>
DocumentRoot "C:\xampp\htdocs"
ServerName localhost
</VirtualHost>
<VirtualHost *>
DocumentRoot "C:\xampp\htdocs\ProjectA\Public\"
ServerName projecta.domain.com
</VirtualHost>
<VirtualHost *>
DocumentRoot "C:\xampp\htdocs\ProjectB\Public\"
ServerName projectb.domain.com
</VirtualHost>
DocumentRoot“C:\xampp\htdocs”
服务器名本地主机
DocumentRoot“C:\xampp\htdocs\ProjectA\Public\”
ServerName projecta.domain.com
DocumentRoot“C:\xampp\htdocs\ProjectB\Public\”
ServerName projectb.domain.com
您还需要将projects.domain.com和projects.domain.com指向DNS或主机文件中的IP地址。它们位于不同的域下。另外,当请求不是来自主机本身时,主机文件在其中扮演什么角色?因此相应地更改服务器名称。客户端需要能够将主机名解析为IP地址对不起,我似乎不明白。你能给我解释一下我目前的设置方式有什么问题吗?也许到时候我就会明白了。我已经在vhosts配置文件中为
ServerName
设置了正确的值,如果您建议的是这样的话。配置似乎没有问题,我们有一个类似的配置,只是我们有指令。@ArnaudKleinveld我不相信显式添加默认端口会导致这种情况,但我会尝试添加它不管怎样,你知道吗,它突然开始工作了,我什么都没做。
<VirtualHost *>
DocumentRoot "C:\xampp\htdocs"
ServerName localhost
</VirtualHost>
<VirtualHost *>
DocumentRoot "C:\xampp\htdocs\ProjectA\Public\"
ServerName projecta.domain.com
</VirtualHost>
<VirtualHost *>
DocumentRoot "C:\xampp\htdocs\ProjectB\Public\"
ServerName projectb.domain.com
</VirtualHost>