我在使用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)并且无法做到。
有人知道我的配置会出现什么问题吗?
答案 0 :(得分:0)
请先键入此命令
,先检查Virtual Host
配置
apachectl -S
它会显示VirtualHost configuration:
hostname
,配置文件也包含行号。
通过了解您将了解您的配置是否正确的信息