0

嘿,我正在尝试在 EngineYard 上启动 Magento。一切正常,除了我试图找到一种方法来确定您当前所处的环境并为其设置动态数据库配置。

基本上是这样的:

if($_SERVER['PHP_ENV' == 'development'){
    // Use a different database config 
}

这在 Cakephp、Yii 等其他框架中非常简单,但我找不到任何关于如何为 Magento 执行此操作的具体内容。

谁能指出我正确的方向以使其正常工作?只是试图避免来回切换数据库连接变量。

4

1 回答 1

1

Devato,我在服务器上设置了我的环境,效果很好。

例如,如果您在 APACHE 上:

<VirtualHost *:80>
        ....
        <Directory "/your_path_root/">
                SetEnv APPLICATION_ENV "development"
                ...
        </Directory>

</VirtualHost>

或者如果你在 Nginx 上(例如 /etc/nginx/sites-available/my_website.conf):

location ~ \.php$ {
        ...
        fastcgi_param   APPLICATION_ENV  development;
        ...
}

然后在您的应用程序中,您可以通过以下方式进行检查:

// Define application environment
defined('APPLICATION_ENV')
    || define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));

然后你有常量 APPLICATION_ENV 作为 env 配置的钩子。

我希望它有帮助!

于 2013-06-12T02:43:09.547 回答