哎呦报错啦怎么办?nginx: [emerg] “server“ directive is not allowed here in /usr/local/nginx/conf/nginx.conf53
Posted 龙少。
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了哎呦报错啦怎么办?nginx: [emerg] “server“ directive is not allowed here in /usr/local/nginx/conf/nginx.conf53相关的知识,希望对你有一定的参考价值。
报错怎么办?不要慌,排它!
1.具体报错提示信息
nginx: [emerg] “server” directive is not allowed here in /usr/local/nginx/conf/nginx.conf:53
nginx: configuration file /usr/local/nginx/conf/nginx.conf test failed
2.报错背景介绍
做nginx服务的基于域名的niginx虚拟主机时,修改配置文件vim /usr/local/nginx/conf/nginx.conf 配置具体域名字符集访问日志和相应的站点位置后,保存退出,在nginx -t 检查文件时出现报错。
我的具体配置信息如下
[root@www momo]# vim /usr/local/nginx/conf/nginx.conf
[root@www momo]# nginx -t
nginx: [emerg] "server" directive is not allowed here in /usr/local/nginx/conf/nginx.conf:53
nginx: configuration file /usr/local/nginx/conf/nginx.conf test failed
4.排错思路过程
(1)首先,要看报错提示内容,定位故障位置
nginx: [emerg] “server” directive is not allowed here in /usr/local/nginx/conf/nginx.conf:53
nginx: configuration file /usr/local/nginx/conf/nginx.conf test failed
根据报错提示表示在53行的service部分不被允许,那就重新进入配置文件,找到53行的service部分,查看是否配置有问题
(2)排错分析及过程
一开始我以为是service部分配置输入有错,就将这部分内容删除后重新设置了一下
结果不如意,重新检测后还是报一样的错误
(3)转机来了
改变思路重新仔细看配置文件内容,真的是看了好久
终于发现问题,一万个我草奔袭而来
发现问题解决问题
分析:
53行的service部分应该是包含在http{}的模块内的,但是我在51行的位置多加了一个} ,相当于把53行的service部分括出了http模块范围外,所以才会提示这部分service服务不被允许。那就简单了,把51行的}去掉应该就解决了。
5.你体验过这样的快乐吗,不,你不懂。
果然分析的没错,看到successful是不是很亲切,酸爽的感觉。虽然问题不大,是小错误,但是体会到了成功的快乐。
[root@www momo]# nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
6.小结一下
(1)故障不可怕,谁遇谁强大,遇到故障不用慌,静下心来对待问题
(2)思路很重要,根据报错提示,定位故障,有方向的查错
(3)没有解决不了的问题,如果有那就是时间问题
以上是关于哎呦报错啦怎么办?nginx: [emerg] “server“ directive is not allowed here in /usr/local/nginx/conf/nginx.conf53的主要内容,如果未能解决你的问题,请参考以下文章
哎呦我去来报错了!LNMP架构中配置nginx支持php时,配置完测试网页时报错了,不要慌!排它!
启动Nginx报错nginx: [emerg] getpwnam(
nginx: [emerg] unknown directive “ ” in /usr/local/nginx/nginx.conf.conf:xx报错处理