当我运行$ php artisan env
时,我得到以下结果:
Current application environment: production
我该如何将其更改为开发环境或类似的内容,以便我可以查看错误?我已经阅读了很多文档,但对于新手来说并不容易理解。我真的没有服务器配置经验。
我相信有一种“聪明”的方法可以做到这一点,但现在我只对手动更改环境感兴趣。我该怎么做?
当我运行$ php artisan env
时,我得到以下结果:
Current application environment: production
我该如何将其更改为开发环境或类似的内容,以便我可以查看错误?我已经阅读了很多文档,但对于新手来说并不容易理解。我真的没有服务器配置经验。
我相信有一种“聪明”的方法可以做到这一点,但现在我只对手动更改环境感兴趣。我该怎么做?
Laravel 5从位于您项目根目录的.env
文件获取其与环境相关的变量。您只需要将APP_ENV
设置为您想要的值即可,例如:
APP_ENV=development
这用于识别当前环境。如果您想显示错误,则需要在同一文件中启用调试模式:
APP_DEBUG=true
.env
文件的作用是允许您根据运行应用程序的不同计算机设置不同的配置。因此,在生产服务器上,.env
文件的设置将与您的本地开发环境不同。
Laravel 5 使用.env
文件来配置您的应用程序。 不应将.env
提交到您的代码仓库中,例如github或bitbucket。 在本地环境中,.env
将如下所示:
# .env
APP_ENV=local
对于您的生产服务器,您可能具有以下配置:
# .env
APP_ENV=production
在你修改了 .env 文件后,不要忘记运行命令 php artisan config:clear
。然后再次运行 php artisan env
命令,这将返回正确的版本。
env.testing
的人。 - ohhh你还可以关注一下暴露的方法 Application->loadEnvironmentFrom($file)
我需要一个应用在多个子域名上运行。所以在bootstrap/app.php
中,我添加了以下内容:
$envFile = '.env';
// change $envFile conditionally here
$app->loadEnvironmentFrom($envFile);
Laravel中默认环境始终为生产环境。
您需要在bootstrap/start.php
中为您的环境指定正确的主机名,例如:
/*
|--------------------------------------------------------------------------
| Detect The Application Environment
|--------------------------------------------------------------------------
|
| Laravel takes a dead simple approach to your application environments
| so you can just specify a machine name for the host that matches a
| given environment, then we will automatically detect it for you.
|
*/
$env = $app->detectEnvironment(array(
'local' => array('homestead'),
'profile_1' => array('hostname_for_profile_1')
));
bootstrap/start.php
文件了。 - Bogdan
.env
文件?是这样吗? - mikelovelyuk.env
文件,但在每台运行应用程序的机器上,其内容可能会有所不同。例如,在本地计算机上,您可能会有APP_ENV=development
和APP_DEBUG=true
,但在生产服务器上,这些值将是APP_ENV=production
和APP_DEBUG=false
。 - Bogdan.env
文件。 - Bogdanvendor
文件夹,还是在生产服务器上运行composer install
? - Bogdan