![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Nginx
猴子敲代码
猴子胖成猩猩
展开
-
008 nginx内置变量
内置变量存放在 ngx_http_core_module 模块中,变量的命名方式和apache 服务器变量是一致的。总而言之,这些变量代表着客户端请求头的内容,例如$http_user_agent, $http_cookie, 等等。下面是nginx支持的所有内置变量: $arg_name 请求中的的参数名,即“?”后面的arg_name=arg_value形式的arg_name $args 请求中的参数值 $binary_remote_addr 客户端地址的二进制形式, 固定长度为4个字节 $.原创 2021-04-13 09:53:52 · 51 阅读 · 0 评论 -
007 Nginx限制访问频率
nginx对于预防一些攻击也是很有效的,例如CC攻击,爬虫,本文将介绍限制这些攻击的方法,可以使用nginx的ngx_http_limit_conn_module、ngx_http_limit_req_module这两个模块达到目的,该模块为nginx内置模块,yum安装即有(001.1文档),无需编译安装。本文就介绍nginx这两个模块的使用和细节,希望能够对需要的小伙伴有所帮助。 这里是使用limit_req_zone模块进行频率限制 红色字体是限制访问频率的配置(完整配置见案例文件) #use原创 2021-04-13 09:52:03 · 229 阅读 · 0 评论 -
006 Nginx集群
学Nginx集群之前要先搞明白负载均衡是怎样分层的,我个人总结的经验是层数越靠上性能必须越高。如图所示,客户的请求由一台LVS服务器转发到Nginx服务器1~3,这样能减轻Nginx服务器1~3的压力,但是所有的请求都会经过LVS服务器,所以LVS的性能必须比Nginx的性能要好,否则它也扛不住。 如果LVS单点也扛不住怎么办,就搞LVS集群,LVS集群前面必然还会有一层负载均衡,就是硬件负载均衡F5(貌似可以抗住5亿的并发),当然LVS也可以和F5属于同一层的负载均衡,就看你们怎么设计。 如果单点原创 2021-04-13 09:50:17 · 123 阅读 · 0 评论 -
005 Nginx实现负载均衡
先用最简单的weight轮询(默认)方式来实现负载均衡,设置的权重值越高被访问到的几率就越高,47.101.194.203是tvacg项目的,另一个是我在本地跑的项目。 upstream与proxy_pass指向域名的情况 worker_processes 1; events { worker_connections 1024; } error_log D:/nginx-1.14.2/logs/error.log; http { # upstream用于定义一组服务列表,一般用域名、服原创 2021-04-13 09:47:43 · 50 阅读 · 0 评论 -
004 配置Nginx作为反向代理服务器
Nginx经常作为代理服务器,作为代理的访问逻辑如下图: 这里将tvacg项目作为目标WebServer,首先将配置文件的http{}块中追加以下内容 server { listen 6904; location / { proxy_pass http://47.101.194.203/; } } server{listen 6904;}表明启动一个http-server监听在6904端口(注:此项不填默认为80端口,但前面的静态服务器已经占用了80端口,此原创 2021-04-13 09:45:20 · 54 阅读 · 0 评论 -
003 Nginx配置文件
这里对Nginx的配置文件进行简单介绍,nginx的配置文件中配置项有两种结构 简单指令:形如key value 块指令:形如key {simple_key simple_value;} 块指令中包含有简单指令,像是json,但又不是json 例如: worker_processes 1; events { worker_connections 1024; } worker_processes 为工作进程的数量,这里如果不填的话默认为CPU核心数,事实上数量为CPU核心数也是最优配置,因原创 2021-04-13 09:43:08 · 74 阅读 · 0 评论 -
001.2 按天分割Nginx日志,删除20天前日志
Nginx会把每天的日志记录到同一个日志文件acess.log中,自身没有提供每天生成一个日志文件功能。我们要通过一个shell脚本每天定时执行可实现按天分割日志文件。 编写脚本文件: vi /usr/local/nginx/sbin/cut-log.sh #!/bin/bash ## 零点执行该脚本 ## Nginx 日志文件所在的目录 LOGS_PATH=/usr/local/nginx/logs ## 获取昨天的 yyyy-MM-dd YESTERDAY=$(date -d "yesterda原创 2021-04-13 09:35:20 · 198 阅读 · 0 评论 -
001.1 Linux下安装Nginx并设开机自启
nginx主要有三种版本:Mainline version\Stable version\Legacy versions,在生产环境最好使用Stable版本(稳定版),如图所示 下载地址: http://nginx.org/en/download.html 先安装依赖项: yum -y install pcre* yum -y install openssl* 手动下载并传入Linux里nginx安装包,或者用wget 命令下载: wget http://nginx.org/downlo原创 2021-04-13 09:31:58 · 76 阅读 · 0 评论 -
001 windows下搭建Nginx与启停
Nginx的下载和安装非常简单,直接在http://nginx.org/en/download.html下载对应的平台版本即可,该文档在Windows下进行的(事实上对于Nginx的安装和简单配置来说,Windows和Linux并没有太大异同),下载的Nginx版本为nginx/Windows-1.14.2。 下载完成之后直接将压缩包解压即可,笔者将其解压到D盘的根目录下,此时文件目录内容如下 Nginx解压完毕之后,直接双击nginx.exe 即可启动,当Nginx启动之后,通过nginx -s原创 2021-04-12 09:32:24 · 89 阅读 · 0 评论