Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache 同一台计算机上的多个网站_Apache_Virtualhost - Fatal编程技术网

Apache 同一台计算机上的多个网站

Apache 同一台计算机上的多个网站,apache,virtualhost,Apache,Virtualhost,我有两个网站托管在同一台机器上,为了能够访问他们从他们的域名没有任何子目录中的url我想我需要使用虚拟主机。目前我已经添加了两个虚拟主机——一个用于本地主机,另一个用于活动域 httpd vhosts.conf NameVirtualHost *:80 <VirtualHost *> DocumentRoot "C:\xampp\htdocs" ServerName localhost </VirtualHost> <VirtualHost *&

我有两个网站托管在同一台机器上,为了能够访问他们从他们的域名没有任何子目录中的url我想我需要使用虚拟主机。目前我已经添加了两个虚拟主机——一个用于本地主机,另一个用于活动域

httpd vhosts.conf

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>