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

标签 php apache centos zend-framework2

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

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 View 中添加了两行代码。

对于开发:
....
echo "DEV";
echo $ZF2_PATH;
....

对于质量保证:
.... 
echo "QA";
echo $ZF2_PATH;
....

对于产品:
....
echo "PROD";
echo $ZF2_PATH;
....

重启httpd服务后:
  • 如果我首先调用 qa..com,那么在每个环境中我都会看到:

    在开发上:

    质量保证

    /var/www/html/开发 /小贩/....

    质量保证:

    质量保证

    /var/www/html/质量保证 /小贩/....

    在产品上:

    质量保证

    /var/www/html/产品 /供应商/....
  • 如果我首先调用 dev..com,那么在每个环境中我都会看到:

    在开发上:

    开发

    /var/www/html/开发 /小贩/...

    质量保证:

    开发

    /var/www/html/质量保证 /小贩/....

    在产品上:

    开发

    /var/www/html/产品 /供应商/....

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

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

    最佳答案

    请检查您的 Virtual Host首先通过键入此命令进行配置

    apachectl -S 
    

    它将显示 VirtualHost configuration:hostname以及包含行号的配置文件在哪里。

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

    关于php - 在同一虚拟机上为 ZF2 应用程序配置多个环境的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45380944/

    相关文章:

    用于从ubuntu服务器获取centOS服务器日期时间的C程序?

    java - Tesseract OCR 无法在 Linux 上的 Java 中运行

    php - 如何自动提取字符串进行翻译?

    PHP MySQL查询问题

    php - 播种一对多关系

    php - 使用 PHP GD 库将 webp 转换为 jpeg

    apache - 映射地址到多个tomcat实例

    gcc - aarch64-linux-gnu-g++ 交叉编译为 arm64 错误

    php - MySQL/Mariadb 进程在前一个进程完成之前不会运行

    linux - Apache httpd 动态 URL 重定向