NGINX功能强大,模块多,对复杂需求要正确配置或正确调优
,是有一定难度的。因此,如何进行配置调试就很重要,特别是对于生产环境调试。本文主要提供调试方法或技巧,对于配置调试Nginx非常又帮助。
目录
在线调试步骤
1、备份当前配置文件。
2、配置调试。
3、检查命令:
nginx -t 测试 NGINX 配置。
nginx -T 测试 NGINX 配置并将验证后的配置打印到屏幕上。此命令在寻求支持时很有用。
4、不中断加载配置命令:
nginx -s reload
5、观察。如果出现较大问题,就先备份新配置,然后恢复旧配置重加载,接下来分析配置改动带来问题原因。
如何用好日志
用好日志是研发和运维人员的基本功。Nginx提供了强大的日志功能(用法详见精通Nginx(06)-日志)。
日志配置
1、错误日志开启到debug级别。(注意:如果Nginx是编译安装的,注意检查编译参数是否带--with-debug)
2、访问日志根据调试对象设置格式。
3、调试rewrite,开启rewrite_log,开启指令:rewrite_log on;
4、针对特定的服务器,在server{...}单独定义访问及错误日志文件。
非调试级别日志
有如下配置:
error_log /var/log/nginx/error.log error;
http{
server {
listen 80;
rewrite_log on;
location /download/ {
rewrite ^(/download/.*)/media/(.*)\..*$ $1/mp3/$2.mp3 break;
rewrite ^(/download/.*)/audio/(.*)\..*$ $1/mp3/$2.ra break;
return 403;
}
location / {
root /usr/share/nginx/trialroot;
index index.html;
}
}
}
如果不开启debug级别日志,用error级别日志。
不匹配测试
用如下实际不匹配的命令测试:
curl -I http://127.0.0.1/download/media/a1.mp3
控制台返回如下:
error日志无输出(虽然rewrite不匹配,但无错误)。
匹配测试
用如下命令测试:
curl -I http://127.0.0.1/download/a/media/a1.mp3
控制台返回如下:
error日志输出((虽然rewrite匹配,但有错误发生):