提问者:小点点

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


我在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>
........................

为了确保它正常工作,我在每个文件夹的主\索引视图中添加了两行代码。

对于开发人员:

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

对于qa:

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

对于prod:

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

重启httpd服务后:

>

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

    在开发中:

    质量保证

    /var/www/html/dev/供应商/......

    关于qa:

    质量保证

    /var/www/html/qa/vendor/。。。。

    生产时:

    质量保证

    /var/www/html/prod/vendor/。。。。

    如果我首先调用dev... com,那么在每个环境中我都会看到:

    在开发中:

    开发人员

    /var/www/html/dev/供应商/...

    关于qa:

    开发人员

    /var/www/html/qa/vendor/。。。。

    生产时:

    开发人员

    /var/www/html/prod/vendor/。。。。

    这不是我所期望的。我每次都想在每个环境中看到不同的硬件。我厌倦了在我的本地计算机(Windows Apache 2.4)上复制它,但做不到。

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


  • 共1个答案

    匿名用户

    请键入此命令,首先检查您的虚拟主机配置

    apachectl -S 
    

    它将显示VirtualHost配置:带有主机名以及包括行号的配置文件的位置。

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