8

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

'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) 哎呀,好像出了点问题。

为什么服务器端没有设置调试模式?

4

4 回答 4

16

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

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

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

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

于 2016-11-19T09:30:23.310 回答
3

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

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

.env 文件

APP_ENV=local
APP_DEBUG=true

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

太重要了,您需要更改APP_ENVlocal.

并检查,你可以运行

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 漂亮的调试画面❤️

于 2020-07-19T12:31:41.443 回答
1

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

于 2018-05-08T09:11:10.513 回答
0

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

APP_ENV=production
APP_DEBUG=false

APP_ENV=local
APP_DEBUG=true
于 2020-06-17T16:47:58.163 回答