Apache服务器使用不同目录托管多个站点(CentOS)

时间:2015-04-18 17:12:12

标签: php apache amazon-ec2 centos

请帮我在apache服务器上设置正确的配置。我不知道它叫什么,但我想在我的服务器(Amazon EC2(CentOS)服务器)上设置多个站点。它还没有域名。

我已经安装了所需的软件,包括php(用phpinfo.php检查)。它工作正常。

现在,我想在我的机器上托管两个不同的基于php的站点。
假设,我的IP地址是 x.y.z.a

目录:
    / var / www / html / crm
    在/ var / www / html等/ crmpanel
    的/ var / www / html等/ mysite的

在我的httpd.conf中,我有:

        NameVirtualHost *:80
        ServerName x.y.z.a
        DocumentRoot“/ var / www / html”

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName x.y.z.a
    ServerAlias x.y.z.a

    DocumentRoot "/var/www/html/crm"

    ErrorLog  /var/log/httpd/error_log
    CustomLog /var/log/httpd/access_log combined

</VirtualHost>

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName x.y.z.a
    ServerAlias x.y.z.a

    DocumentRoot "/var/www/html/crmpanel"

    ErrorLog  /var/log/httpd/error_log
    CustomLog /var/log/httpd/access_log combined

</VirtualHost>

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName x.y.z.a
    ServerAlias x.y.z.a

    DocumentRoot "/var/www/html/mysite"

    ErrorLog  /var/log/httpd/error_log
    CustomLog /var/log/httpd/access_log combined

</VirtualHost>


如果我运行“httpd -S”,它将返回'Syntax OK'。 Apache服务器启动时没有任何错误。

请帮我理解配置中的错误。

1 个答案:

答案 0 :(得分:1)

您需要为相应的虚拟主机条目设置ServerNameServerAlias (域名而不是IP),并且还需要设置正确的DocumentRoot。< / p>

ServerAlias是可选的。

ServerName : xyz.com
ServerAlias  : www.xyz.com

请参阅此blog post以获取详细说明。