2020年,nginx服务器部署/配置/优化与安全

本文是一个索引,博主最近在使用nginx,踩了不少坑,总结了很多博文,有点混乱,因此写下这篇文章作为之前博文的索引,方便以后阅读

1. 安装

centos下nginx安装教程

2.配置文件说明

  1. 快速入门说明
  2. 精解

3.部署网站

nginx多网站部署

注:nginx不管是与Python、nodejs还是PHP联合使用,本质都是反向代理,流程:

  1. 运行Python、nodejs、PHP应用,监听某个端口;
  2. 打开nginx,监听80端口,来请求时,nginx会根据域名转发(多虚拟主机)到对应的程序监听端口上(反向代理);
  3. 程序接收到请求,开始处理请求,然后返回;

4.建议配置项

  1. 打开gzip on;
  2. 限制某个ip访问频率(避免ddos和多线程爬虫)
  3. 配置日志
    error_log /var/log/nginx/error_debug.log debug;
    error_log /var/log/nginx/error_warn.log warn;
    error_log /var/log/nginx/error.log error;
  4. 网络序列化,避免惊群
    accept_mutex on;
  5. 限制请求头(防止爬虫)
    vim /etc/nginx/conf.d/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;
}

参考:https://blog.csdn.net/slovyz/article/details/73243926

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

THMAIL

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值