在同一虚拟机上为ZF2应用程序配置多个环境的问题

时间:2017-07-28 19:20:25

标签: php apache centos zend-framework2

我在使用CentOS 5,Apache 2.2和PHP 5.4的非常老的虚拟机上安装了ZF2应用程序。我试图在同一个VM上设置不同的环境。 所以,我们有:

1)3个文件夹:

/var/www/html/dev

/var/www/html/qa

/var/www/html/prod

具有几乎相同的源代码(git存储库的不同分支)。

2)3个子域名:

dev.<mysite>.com

qa.<mysite>.com

<mysite>.com

3)httpd.conf:

................

NameVirtualHost *:80

.................

<VirtualHost *:80>

     DocumentRoot /var/www/html/dev/public

     ServerName dev.<mysite>.com

     ........................
</VirtualHost>

<VirtualHost *:80>

    DocumentRoot /var/www/html/qa/public

    ServerName qa.<mysite>.com

    ........................

</VirtualHost>

<VirtualHost *:80>

    DocumentRoot /var/www/html/prod/public

    ServerName <mysite>.com
    ........................
</VirtualHost>
........................

为了确保它有效,我在每个文件夹的Home \ Index视图中添加了两行代码。

对于开发者:

....
echo "DEV";
echo $ZF2_PATH;
....

对于qa:

.... 
echo "QA";
echo $ZF2_PATH;
....

对于刺激:

....
echo "PROD";
echo $ZF2_PATH;
....

重启httpd服务后:

  • 如果我先打电话给qa..com然后在每个环境中我会看到:

    on dev:

    QA

    /无功/网络/ HTML /的 dev的 /供应商/....

    关于qa:

    QA

    /无功/网络/ HTML /的 QA /供应商/....

    on prod:

    QA

    /无功/网络/ HTML /的 /供应商/....

  • 如果我先打电话给dev..com然后在每个环境中我会看到:

    on dev:

    DEV

    /无功/网络/ HTML /的 dev的 /供应商/...

    关于qa:

    DEV

    /无功/网络/ HTML /的 QA /供应商/....

    on prod:

    DEV

    /无功/网络/ HTML /的 /供应商/....

这不是我所期待的。我想在每个环境evrytime看到不同的hardocde。我厌倦了在我的本地计算机上重现它(Windows + Apache 2.4)并且无法做到。

有人知道我的配置会出现什么问题吗?

1 个答案:

答案 0 :(得分:0)

请先键入此命令

,先检查Virtual Host配置
apachectl -S 

它会显示VirtualHost configuration: hostname,配置文件也包含行号。

通过了解您将了解您的配置是否正确的信息