测试环境突然无法打开网站,领导让我上去找一下原因。
首先把框架的报错提示打开
# .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,接下来是找内鬼时间,