2

服务器有两个IP,新的centos min install。Apache 正在工作,两个 ips 都加载 Apache 测试页面。www.domain.com 和 domain.com 都解析为第二个 IP。

我希望第一个 IP (192.168.0.1) 加载 Apache 测试页面,这工作正常

我希望第二个 IP(192.168.0.2)在 /home/site/www 中加载网站

目前,当我们转到 domain.com 或 www.domain.com 或第二个 IP 时,它会加载 apache 测试页面而不是站点,这是我们的配置。此外,我将 IP 列为 192 而不是真实 ip。我错过了什么?为什么 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=/var/www /home/site/www

SELinux 需要在其上设置正确的权限,使用引用将相同的权限复制到我的新文件夹

4

2 回答 2

4

试试这个:

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 用户的读取权限。

于 2012-10-04T05:12:11.520 回答
-1

您缺少 NameVirtualHost 指令。

  NameVirtualHost 192.168.0.2:80

我还强烈建议也放入目录指令。

于 2012-10-04T03:54:21.237 回答