繁体   English   中英

Laravel 5. 调试模式

[英]Laravel 5. Debug mode

我在 config->app 中将调试模式设置为true并将其部署在服务器上:

'debug' => env('APP_DEBUG', true),

我在控制器中有以下代码来检查模式:

...
$debug = config('app.debug');
var_dump($debug);
$product->save();

本地机器上的结果:

C:\\xampp\\htdocs\\MK\\app\\Http\\Controllers\\ProductController.php:45:boolean true

服务器上的结果:

bool(false) 哎呀,好像出了点问题。

为什么不在服务器端设置调试模式?

配置文件中的这一行'debug' => env('APP_DEBUG', true)可能是导致问题的原因。

它在说; debug设置为我的.env文件中定义的值,如果没有,则使用true

因此,即使您已将第二个参数设置为 true,它也会查看.env文件中的APP_DEBUG=false

尝试将.env文件中的设置更新为 true。

首先需要激活调试模式 并且APP_ENV需要设置为local

现在该怎么做! 我们需要检查多个地方

.env 文件

APP_ENV=local
APP_DEBUG=true

确保它们没有设置两次! 您可以使用# APP_ENV=production取消注释(使用# )。

太重要了,您需要将APP_ENV更改为local

并检查,你可以运行

php artisan env

你会得到类似的东西:

在此处输入图片说明

配置/app.php

接下来要检查的是config/app.php

知道.env是由这个文件处理的! 该文件是管理配置的地方!

检查配置行没有被删除或注释
(取决于它是新安装还是一些已经在项目中工作)

取决于您使用的 Laravel 版本! 可能略有不同!

但关键是要确保 .env 配置已加载,否则将默认为true

'debug' => env('APP_DEBUG', true) // second param the default value

在我们当前的项目中! 设置如下:

'debug' => (function_exists('env')) ? env('APP_DEBUG', true) : true,

它检查 env 是否存在! 如果是它使用它! 如果不是它会直接设置默认值!

我的队友! 没注意到! 他犯了一个错误! 因为我们之前有人将其更改为如下(并被评论):

在此处输入图片说明

添加图像是为了说明错误是如何发生的! 也是为了通航!

底线检查它并确保它没问题! (如果没问题,请移至下一部分)

确定一切设置但不工作

是的,意料之中!

清除视图和缓存

重要的是您应该知道您可能需要清除缓存

运行

php artisan view:clear

php artisan cache:clear

之后它应该工作!

如果没有!

文件权限

您可能有文件系统权限问题!

看看这个

https://stackoverflow.com/a/28063794/7668448

预期的调试视图

在此处输入图片说明

Laravel 漂亮的调试画面❤️

在您的情况下,只需转到您的.env文件并将"APP_DEBUG=false"更改为"APP_DEBUG=true"

您还可以将设置更改为您的 .env 文件

APP_ENV=production
APP_DEBUG=false

APP_ENV=local
APP_DEBUG=true

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM