内容来源于 Stack Overflow,遵循 CC BY-SA 4.0 许可协议进行翻译与使用。IT领域专用引擎提供翻译支持
腾讯云小微IT领域专用引擎提供翻译支持
我正在尝试设置两个环境:本地和生产。
到目前为止,我已经添加了一个 bootstrap/environment.php 文件,它是:
bootstrap/environment.php
$env = $app->detectEnvironment(array( 'local' => array('Ben'), 'staging' => array('staging.domain.org'), 'production' => array('domain.org'), ));
和两个 .env 文件- .local.env 和 .production.env ,使用不同的环境变量,例如: APP_ENV=local 和 APP_DEBUG=true 。
.env
.local.env
.production.env
APP_ENV=local
APP_DEBUG=true
我的笔记本电脑的主机名是 Ben 。
Ben
我遇到的问题是 php artisan env 总是返回 Production ,因此,我无法加载我的应用程序。
php artisan env
Production
此外,在 production.env 文件中,如果我将 APP_DEBUG 变量更改为true或false,也不会对web应用程序产生影响-它总是返回“哇,看起来好像出了什么问题。”
production.env
APP_DEBUG
任何帮助都将不胜感激。谢谢。
这让我在Laravel 5中烦透了。我修复它的方法是在bootstrap/app.php的末尾添加以下代码:
$app->detectEnvironment(function () use($app) { $env = env('APP_ENV', 'local'); $file = ".env.{$env}"; $app->loadEnvironmentFrom($file); });
然后为每个环境添加文件,例如.env.local、.env.production等。
现在,您可以通过设置APP_ENV环境变量来交换环境文件。如果未设置APP_ENV,则代码默认为'.env.local‘。使用以下命令进行测试:
$ APP_ENV=production ./artisan env Current application environment: production $ ./artisan env Current application environment: local
Laravel在运行phpunit时自动将APP_ENV设置为'testing‘(特别是在Foundation/Testing/TestCase类中),所以如果你想在运行测试时使用不同的数据库设置等,请确保你有一个'.env.testing’文件。
我也遇到过这样的问题。我使用的是带有homestead的Laravel 5.2.14。我修复了添加以下行的问题:
'env' => env('APP_ENV', 'production'),
在文件中: config\app.php
config\app.php
我从以前的版本升级了我的Laravel应用程序,这个版本不包含这一行,或者至少我没有它。文件的最新版本位于:
https://github.com/laravel/laravel/blob/master/config/app.php
转到laravel中的.env文件并设置您的
PAYTM_ENVIRONMENT=production PAYTM_MERCHANT_ID={// Your production MID}