nginx 引入外部配置文件

  1. server 下的 include

可以使用 include 语法起到外部配置引入,使用场景:

  • 独立 server
  • 公共 location 处理

本文内容未做测试!

server 下的 include

以 “网站防御爬虫” 为例

进入到 nginx 安装目录下的 conf 目录,将如下代码保存为 agent_deny.conf

#禁止Scrapy等工具的抓取
if ($http_user_agent ~* (Scrapy|Curl|HttpClient)) {
     return 403;
}

#禁止指定UA及UA为空的访问
if ($http_user_agent ~ "WinHttp|WebZIP|FetchURL|node-superagent|java/|FeedDemon|Jullo|JikeSpider|Indy Library|Alexa Toolbar|AskTbFXTV|AhrefsBot|CrawlDaddy|Java|Feedly|Apache-HttpAsyncClient|UniversalFeedParser|ApacheBench|Microsoft URL Control|Swiftbot|ZmEu|oBot|jaunty|Python-urllib|lightDeckReports Bot|YYSpider|DigExt|HttpClient|MJ12bot|heritrix|EasouSpider|Ezooms|BOT/0.1|YandexBot|FlightDeckReports|Linguee Bot|^$" ) {
     return 403;             
}

#禁止非GET|HEAD|POST方式的抓取
if ($request_method !~ ^(GET|HEAD|POST)$) {
    return 403;
}

然后,在网站相关配置中的 server 段插入如下代码:include agent_deny.conf;

保存后,执行如下命令,平滑重启即可:/usr/local/nginx/sbin/nginx -s reload


转载请注明来源。 欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。 可以在下面评论区评论,也可以邮件至 sharlot2050@foxmail.com。

文章标题:nginx 引入外部配置文件

字数:219

本文作者:夏来风

发布时间:2019-10-16, 22:37:24

原始链接:http://www.demo1024.com/blog/nginx-include/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。