Apache IP虚拟主机
问题描述:
服务器有两个IP,最新安装的是centos centos。 Apache正在工作,两个ips都加载Apache测试页面。 www.domain.com和domain.com都解析为第二个IP。Apache IP虚拟主机
我想第一个IP(192.168.0.1)来加载Apache的测试页面,这是工作的罚款
我想第二个IP(192.168.0.2)中加载网站的/ home /网站/ www
目前,当我们转到domain.com或www.domain.com或第二IP时,它会加载apache测试页面而不是站点,下面是我们的配置。另外我的IP列为192,而不是真正的IPS。我错过了什么?为什么不是192.168.0.2加载/ home/site/www而不是Apache测试页?
ServerRoot "/etc/httpd"
Listen 80
ServerName 192.168.0.1:80
DocumentRoot "/var/www/html"
<Directory "/var/www/html">
NameVirtualHost 192.168.0.2:80
<VirtualHost 192.168.0.2:80>
DocumentRoot /home/site/www
ServerName mydomain.com
ServerAlias *.mydomain.com
ErrorLog logs/mydomain.com-error_log
CustomLog logs/mydomain.com-access_log common
</VirtualHost>
更新
的修复
chcon这个-R --reference = /无功/网络/家/网站/ WWW
的SELinux需要在其上设置正确的权限,使用参考它将相同的权限复制到我的新文件夹
答
试试这个:
ServerRoot "/etc/httpd"
Listen 80
ServerName 192.168.0.1:80
NameVirtualHost 192.168.0.1:80
NameVirtualHost 192.168.0.2:80
<VirtualHost 192.168.0.1:80>
DocumentRoot /var/www/html
ServerName mydomain.com #change accordingly
ServerAlias *.mydomain.com
ErrorLog logs/mydomain.com-error_log
CustomLog logs/mydomain.com-access_log common
</VirtualHost>
<VirtualHost 192.168.0.2:80>
DocumentRoot /home/site/www
ServerName mydomain2.com
ServerAlias *.mydomain2.com
ErrorLog logs/mydomain2.com-error_log
CustomLog logs/mydomain2.com-access_log common
</VirtualHost>
不要忘记申请在Apache上的变化。 service httpd reload
或类似命令。 此外,请确保目录/var/www/html
至少具有读取apache用户的权限。
答
您缺少NameVirtualHost指令。
NameVirtualHost 192.168.0.2:80
我也强烈建议把目录指令也放进去。
我试过了,结果相同。 IP2 /域仍然加载测试页而不是/ home/site/www – user1155594
[NameVirtualHost is * Deprecated *](http://httpd.apache.org/docs/2.4/mod/core.html#namevirtualhost)根据apache -httpd文档;在2.3.11之前,NameVirtualHost需要指示服务器特定的IP地址和端口组合可用作基于名称的虚拟主机。在2.3.11及更高版本中,任何时候在多个虚拟主机中使用IP地址和端口组合时,都会自动为该地址启用基于名称的虚拟主机。 –