最近修改nginx的配置文件,想在location区域加个判断,语句如下:
if($uid = "" ) { return 403; }
结果总是报错:
nginx: [emerg] unknown directive
找了很多网页,也没看出个所以然。后来终于发现:if后面必须有空格跟括号隔开才行!!!
if ( $uid = "" ) { return 403; }
写篇文章做个记录,后续如果有网友踩了这个坑,还能够爬出来!
另外提醒一下,nginx的配置文件有 if ,好像不支持 else 。
Nginx if语句陷阱
本文记录了一次在Nginx配置文件中使用if语句的常见错误,即if语句后直接跟条件判断而未留空格,导致unknowndirective错误。并提醒读者,Nginx的if语句不支持else分支。
2万+

被折叠的 条评论
为什么被折叠?



