用于来自不同目录的虚拟主机的Apache httpd.conf设置

时间:2014-12-06 13:40:00

标签: .htaccess httpd.conf

我在云服务器上运行了3个网站,默认使用Apache httpd.conf设置。我已经取消注释NameVirtualHost并从VirtualHost配置了3个网站,在为每个网站设置了DocumentRoot和ServerName之后,所有网站都运行良好,但只有默认目录中的网站正在用于mod-rewrite,我用于SEO网址。其他2个站点位于/ var / www / html上方一个级别,位于/ var / www / websites / site1,site2的子文件夹中。我曾尝试在.htaccess文件中使用RewriteBase来完成这项工作但没有成功,我不知道在httpd.conf文件中我可以进行任何更改以使事情正确。请帮助,谢谢。

1 个答案:

答案 0 :(得分:0)

如果我理解正确,你希望在1台Apache服务器上运行3个独立的网站,然后能够重写所有这些网站。

您使用VirtualHosts走在正确的轨道上。您需要坚持为要托管的每个网站使用单独的VirtualHost。

给定文件夹结构如下

/var/www/
- /websites
-- /site1
-- /site2
-- /site3

然后,您可以为3个站点中的每个站点设置3个VirtualHost:

NameVirtualHost *:80

<VirtualHost *:80>
    ServerName www.domain1.tld
    DocumentRoot /var/www/websites/site1
</VirtualHost>

<VirtualHost *:80>
    ServerName www.domain2.tld
    DocumentRoot /var/www/websites/site2
</VirtualHost>

<VirtualHost *:80>
    ServerName www.domain2.tld
    DocumentRoot /var/www/websites/site3
</VirtualHost>

希望这有帮助。