PS:近来工作忙,很久没上去本博的VPS,刚才找空上去整理一下,顺便update一些软件包,目前Nginx的最新稳定版本是1.2.0,升级到这个版本后,重启nginx出现如下报错:
根据报错信息,意思是这段配置:
log_format access '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" $http_x_forwarded_for';
只能放到http{}里面,而不能放到server{}里面。为啥会这样?只有一个解释,就是nginx的作者在这个版本把这段日志格式配置的语法做了修改!
解决方法:
把上面log_format的日志格式配置移出server{}放在http{}里面,但要在server{}的外面。这样就OK。如果你的配置里面还有类似:
access_log /var/log/nginx/access.log access;
这样的日志文件路径配置,也跟着一样迁移!否则还会报错!
最后说一句:生产环境升级软件包要谨慎,必须要经过严格测试。我这个VPS自己玩的,折腾没事。