Skip to main content

常见问题

如何定位打开页面空白或错误?

页面空白或错误有多种原因,从服务器到代码每一步都可能出错。这里主要列出常见的错误定位方法。具体的错误解决方法,可根据定位到的错误信息进一步排查。

检查浏览器的 "开发者工具"

  • 打开浏览器的 "开发者工具"
  • 检查控制台是否有错误信息
  • 刷新页面,检查网络请求是否正常
tip

Windows 和 Linux 打开 Chrome "开发者工具" 的快捷键是 Control+Shift+J,Mac 的快捷键是 Command+Option+J

Chrome 开发者工具界面如下:

Chrome 开发者工具

检查系统日志

  • 进入框架日志目录(如果有的话),检查最新的日志文件是否有错误信息
cd log
  • 进入项目日志目录,检查最新的日志文件是否有错误信息
cd storage/logs
note

日志文件按日期命名,如 20220304.logerror20220304.log

检查代码

页面返回的内容,可以在 Miaoxing\Plugin\Service\App 类的 handleResponse 方法中调试

检查 Nginx

  • 检查 Nginx 配置是否正确
nginx -t
  • 检查 error.log 是否存在 Nginx 配置错误,网络错误
tail -f storage/logs/nginx/error.log  # 请更改为您的路径
  • 检查 access.log 是否有请求访问
tail -f storage/logs/nginx/access.log # 请更改为您的路径

检查 PHP-FPM 日志

  • 检查 Nginx 请求是否有转发到 PHP-FPM
tail -f storage/logs/php-fpm/access.log # 请更改为您的路径
  • 检查 PHP 运行错误
tail -f storage/logs/php-fpm/error.log # 请更改为您的路径

检查 Docker

有时 Docker 或其他服务会缓存住文件,导致文件更改后不生效。

有时长时间运行,电脑多次休眠唤醒,但网络没有正常恢复,可能出现访问一直卡在加载中的情况。

可以尝试重启 Docker 解决。

检查网络代理软件

有时网络代理软件会将请求进行转发,可能出现的情况为:

  • 请求卡住不动,在固定时间(如 60s,120s)后返回超时(代理设置的超时时间)
  • Nginx 无请求日志(请求被转发到其他 IP)
  • 访问本地域名,却返回线上域名的内容(代理把域名解析为线上的 IP)

可以将网络代理软件彻底退出,确认问题后添加白名单解决。