在我的Nginx服务器上,为了节省时间,我做了etc/nginx/include.conf,并把这一行放在etc/nginx/sites-可用/site1.conf:
location / {
include /etc/nginx/include.conf;
try_files $uri $uri/ /index.php?page=$uri;
}
include.conf的内容:
if ($http_referer ~* (badreferers)) {
return 403;
}
测试 conf 文件时,会出现以下错误:/etc/nginx/include.conf:1 中出现 [emerg] 未知指令“if”
当我将if语句直接放在etc/nginx/sites available/site1.conf中时,它不会给出错误。
这里怎么了?
更新:< code>nginx -V给出:
nginx版本:nginx/1.4.6(Ubuntu)由GCC4.8.4(Ubuntu 4.8.3-2ubuntu1~14.04.3)构建,启用TLS SNI支持配置参数:--with cc opt='-g-O2-fstack protector--param=ssp buffer size=4-Wformat-Werror=format security-D_FORTIFY_SOURCE=2'-带有ld opt='-Wl,--b符号函数-z,前缀=/usr/share/nginx--conf path=/etc是的。conf——http日志路径=/var/log/nginx/access。log——错误日志路径=/var/log/nginx/error。log--lock path=/var/lock/nginx。lock--pid路径=/run/nginx。pid--http客户端主体临时路径=/var/lib/nginx/body--http fastcgi临时路径=/var/lib/nginx/fastcgi--http代理临时路径=/var/lib/nginz/proxy--http scgi临时路径=//var/lib/nginx/uwsgi--带调试--带pcre jit--带-ipv6--带-http_ssl_module--带-http_这是一个很好的例子--dav_
看起来你在nginx配置文件中有这样一行
include /etc/nginx/*.conf;
因此,您的文件/etc/nginx/include.conf不仅包含在/etc/nginx/sites-available/site 1 . conf中,还包含在“if”指令无效并出现错误的其他地方。
如果 是 http://nginx.org/en/docs/http/ngx_http_rewrite_module.html#if 的一部分。您需要将重写模块添加到nginx中。
或者最好我们从nginx他们自己的官方软件包
http://nginx.org/en/linux_packages.html#stable
你用的是老的nginx版。在modern 1.10.2上,您的配置工作正常。
我查了nginx的来源。“include”指令不只是被包含文件的内容所取代。根据上下文的不同,处理方式也会有所不同。所以对于你可以放入的文件肯定有一些限制。至少在你的nginx版本中是这样。正如nginx文档所说
包含的文件应由语法正确的指令和块组成。
问题内容: 我已经跟随该网站http://raspberrypihelp.net/tutorials/24-raspberry-pi- webserver 在我的Raspberry Pi上设置HTTP服务器nginx并尝试设置一个站点调用 **example.com** 。但是当我跑步时,它说 重新启动nginx:nginx:/etc/nginx/sites-enabled/example.com
本文向大家介绍Nginx Location 指令简明指南,包括了Nginx Location 指令简明指南的使用技巧和注意事项,需要的朋友参考一下 Nginx 中的 Location 指令 是NginxHttpCoreModule中重要指令。Location 指令比较简单,但却是配置 Nginx 过程中不得不去了解的。 Location 指令,是用来为匹配的 URI 进行配置,URI 即语法中的"
我一直在尝试使用AWS Amplify来生成GraphQLAPI和后端。我可以使用引导模式创建创建一个工作后端。我选择了Todo示例。我可以从Android Studio内置的应用程序中调用它。查询和突变工作正常。每当我使用Android Studio查看模式时。graphql在放大/backend/api/project/(其中project是项目的名称)中,我在尝试重新定义Todo和使用未声明
嗨,我正在尝试使用Django实现elasticsearch。我正在学习本教程 https://www.codementor.io/samueljames/using-django-with-elasticsearch-logstash-and-kibana-elk-stack-9L4FWX138 我得到了, 键入“manage.py help”了解用法信息。 尝试使用cmd创建索引时 请帮忙
本文向大家介绍nginx中的listen指令实例解析,包括了nginx中的listen指令实例解析的使用技巧和注意事项,需要的朋友参考一下 剧情回顾 上一篇文章我们分析了location指令的解析过程,简单的回顾一下这个内容:每个location对应一个ngx_http_core_loc_conf_t结构体,所有的location通过一个双向队列连接在一起。数据结构比较复杂。 listen指令 n
本文向大家介绍nginx proxy_pass指令’/’使用注意事项,包括了nginx proxy_pass指令’/’使用注意事项的使用技巧和注意事项,需要的朋友参考一下 1. proxy_pass配置说明 不带/ 带/ 上面两种配置,区别只在于proxy_pass转发的路径后是否带 “/” 针对情况1,如果访问url = http://server/test/test.jsp,则被nginx代理