我知道Yii定义并使用常量YII_DEBUG和YII_ENV.当然,我们当地的机器设置为“真实”和“开发”.这是因为基本的应用程序模板已经在
index.php文件中这样做了.该文件还告诉我,我应该删除生产模式的那些行,即在生产机器上.那么这些常量默认设置为“false”和“prod”.没关系,我明白了.
(更多信息,请参阅 Defining Constants和 Environment Constants).
(更多信息,请参阅 Defining Constants和 Environment Constants).
我的问题:当index.PHP包含在VCS中时,如何最好地处理这些常量?在一个环境中,它们应该存在,而另一个则不存在.当然也可以是测试机.我有哪些选择?我认为这也是部署方法的问题.目前,我只是通过Git推送到生产机器,什么是原始部署IMO …
你怎么做呢?你建议什么
编辑:实际上,处理params文件是同样的问题.
这是我的解决方案:
if ($_SERVER['SERVER_NAME'] == 'localhost' || $_SERVER['SERVER_NAME'] == '127.0.0.1') { defined('YII_DEBUG') or define('YII_DEBUG',true); defined('YII_ENV') or define('YII_ENV','dev'); }
也为Heroku,Setup Yii2 Advanced on Heroku