nginx: [warn] the "log_format" directive may be used only on "http" level 解决方法

一直不提倡使用最新的版本,不过也真因为有部分爱折腾的才会不断的发现问题。目前Nginx的稳定版本是1.0.12,Nginx升级到1.1.1*版本后,会出现nginx: [warn] the "log_format" directive may be used only on "http" level in /usr/local/nginx/conf/nginx.conf:84的警告。

将/usr/local/nginx/conf/nginx.conf 里server段里的下面代码移出放到该server段的前面即可。

log_format  access  '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" $http_x_forwarded_for';

如果有其的虚拟主机开启了日志,也按上面的要求移出server段放在server段的前面即可。

再/usr/local/nginx/sbin/nginx -t 测试一下,没有warn警告信息了。

总之,生产环境升级需谨慎。