thinkphp6 报错500且无提示

测试环境突然无法打开网站,领导让我上去找一下原因。

首先把框架的报错提示打开

# .env
APP_DEBUG = true
# config/app
show_error_msg => true

首先查看框架报错,然后查看web服务器报错

1.可能是框架返回字符编码出现问题

要修改的文件位置

# vendor/topthink/framework/src/think/exception/Handle.php

将返回强制转换为utf8就好了

在末尾添加方法

/**
 * 将字符编码转为utf-8
 * @access protected
 * @param array $data
 * @return array   转化后的数组
*/
protected function convertUtf8(array $data): array
{
	foreach ($data as $key => $value) {
		$data[$key] =  mb_convert_encoding($value, "UTF-8","GBK, GBK2312");
	}
	return $data;
}

在文中搜索字符串,大概180行位置

Server/Request Data

修改为以下数据

'Server/Request Data' => $this->convertUtf8($this->app->request->server()),

以下是第二种方法

2.设置php.ini配置

log_errors = On
error_log=D:/WorkTools/phpstudy_pro/Extensions/php/php7.4.3nts.log
display_errors = On
display_startup_errors = On
error_reporting = E_ALL

再次访问网站
报错还是无提示,但是日志已经记录下来了
TNND,接下来是找内鬼时间,
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值