Php 如何使用symfony环境开发和产品

Php 如何使用symfony环境开发和产品,php,apache,symfony,Php,Apache,Symfony,这似乎是一个愚蠢的问题,我需要我的symfony 3应用程序在生产中表现出与我的本地机器不同的行为。我知道每个env、app.php和app_dev.php都有一个入口点 我不想更改应用程序web/.htaccess文件,因为它后面跟着git,我希望在app/config.yml中有一个'env'var或类似的东西,但也有一个config.yml和一个config_dev.yml,所以它必须是另一个我可以定义是使用prod还是dev env的地方 文档中说,我需要将apache服务器设置为使用w

这似乎是一个愚蠢的问题,我需要我的symfony 3应用程序在生产中表现出与我的本地机器不同的行为。我知道每个env、app.php和app_dev.php都有一个入口点

我不想更改应用程序web/.htaccess文件,因为它后面跟着git,我希望在app/config.yml中有一个'env'var或类似的东西,但也有一个config.yml和一个config_dev.yml,所以它必须是另一个我可以定义是使用prod还是dev env的地方

文档中说,我需要将apache服务器设置为使用web/app.php或web/app_dev.php,这是我的问题。我正在使用apache 2.4,并尝试使用以下指令:

<VirtualHost *:8000>
    <directory>
        ...
        DirectoryIndex app_dev.php
    </directory>
</VirtualHost>

...
DirectoryIndex应用程序_dev.php
我重新启动了apache,但当我在浏览器中键入
localhost:8000
时,它一直使用默认的app.php,我需要我的apache服务器使用app_dev.php,我不想使用内置服务器,因为过了一段时间它就会出问题


有人能帮我配置apache以使用dev env吗?

我认为您有以下问题:无论您定义了哪个
DirectoryIndex
,服务器都会从
.htaccess
中获取一些设置。您是否可能在其中有另一个对
app.php
的引用,比如
RewriteRule^(.*)$app.php[QSA,L]

然后,您可以执行以下操作:将该精确设置从
.htaccess
移动到本地和生产服务器上的服务器配置。然后,您可以保持所有其他设置独立于您的环境

如果这还没有帮助,请共享
.htaccess
的内容


另一种解决方法是使用最新的Symfony版本,并将环境之间可能更改的所有内容放入
.env
文件中。不要将其置于版本控制之下,因为此文件可能包含敏感信息。然后看看当前的基础知识:您不再有
app.php
app\u dev.php
,因为更改很少。使用了一个通用的
index.php
,它可以读取
.env

中的所有当前设置,谢谢!我将symfonyapp/web/.htaccess配置复制到/etc/apache2/sites availables/中的我的site.conf,并将“app.php”修改为“app_dev.php”,它现在可以在dev环境中工作