我在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)上复制它,但做不到。
有人知道我的配置有什么问题吗?
请键入此命令,首先检查您的虚拟主机配置
apachectl -S
它将显示VirtualHost配置:
带有主机名
以及包括行号的配置文件的位置。
通过了解信息,您将知道您的配置是否正确