宝塔Docker反代容器时报错 - ERROR: 检测到配置文件有错误,请先排除后再操作

243 阅读1分钟

遇到的问题

ERROR: 检测到配置文件有错误,请先排除后再操作

nginx version: nginx/1.26.2\ nginx: [emerg] unknown log format "monitor" in /www/server/panel/vhost/nginx/ch.nz.cx.conf:117\ nginx: configuration file /www/server/nginx/conf/nginx.conf test failed

解决方法

这个问题是nginx配置文件中有一个未知的日志格式"monitor"。卡了我老半天。

解决方法就是找到Nginx的"monitor"日志格式,如果没有,需要先定义它。在nginx.conf的http块中进行添加。

http {
    log_format monitor '...这里填你的日志格式定义...';
}

我这里定义了一个

log_format monitor '$remote_addr - $remote_user [$time_local] '
                  '"$request" $status $body_bytes_sent '
                  '"$http_referer" "$http_user_agent" '
                  '$request_time $upstream_response_time $pipe '
                  '"$http_x_forwarded_for"';
  • $remote_addr: 访问者IP
  • $remote_user: 远程用户
  • $time_local: 本地时间
  • $request: 请求内容
  • $status: 状态码
  • $body_bytes_sent: 发送给客户端的字节数
  • $http_referer: 来源页面
  • $http_user_agent: 用户代理(浏览器信息)
  • $request_time: 请求处理时间
  • $upstream_response_time: 上游响应时间
  • $pipe: 管道方式
  • $http_x_forwarded_for: 代理IP

最后记得重新载入一下

再去创建就可以了