Docker和Nginx实现一个简单的负载均衡
当前使用centos7系统 1、安装nginx 参考https://blog.whsir.com/post-2078.html 2、docker拉取nginx镜像
1 |
docker pull nginx |
3、创建两个目录 [crayon … 阅读全文
当前使用centos7系统 1、安装nginx 参考https://blog.whsir.com/post-2078.html 2、docker拉取nginx镜像
1 |
docker pull nginx |
3、创建两个目录 [crayon … 阅读全文
主要通过nginx的http_limit_conn和http_limit_req模块来防御cc攻击。 ngx_http_limit_req_module可以限制单个IP每秒请求数 ngx_http_limit_conn_module可以限制单个IP的连接数 通 … 阅读全文
使用yum源直接安装nginx 1、配置nginx源 centos6:
1 |
rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm |
centos7:
1 |
rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm |
2、安装nginx(默认会安装最新的稳 … 阅读全文
当前系统Centos7.4,关闭selinux,关闭防火墙(或自行设置) 1、配置好yum源,安装依赖
1 |
yum install wget gcc gcc-c++ pcre pcre-devel openssl openssl-devel zlib zlib-devel |
2、创建nginx启动用户 [crayon-67676bd76d7df164111573/ … 阅读全文
先生成个大文件,以便测试 dd if=/dev/zero of=demo.rar bs=1M count=5000 限制一个IP同一时间只允许发起一个连接,如果发起多个链接,会提示503,用户在开始的下载500m之前,下载速度可以飙到最大,但是一旦下载的文件大 … 阅读全文
在nginx的server字段中配置下面内容即可
1 2 3 |
if ($http_user_agent ~* (baiduspider|googlebot|bing|sogou|yahoo)){ return 503; } |
如果单独屏蔽百度蜘蛛就是
1 2 3 |
if ($http_user_agent ~* baiduspider){ return 503; } |
~微信打赏~ 赏
nginx禁止指定目录运行php,只需要在server配置段中增加个location规则就可以了。 1、禁止某一个目录执行php
1 2 3 4 |
location ~* ^/download/.*\.(php|php5)$ { deny all; } |
2、禁止多个目录执行php [crayon-67676bd76d … 阅读全文
Nginx负载均衡(工作在七层“应用层”)功能主要是通过upstream模块实现,Nginx负载均衡默认对后端服务器有健康检测的能力,仅限于端口检测,在后端服务器比较少的情况下负载均衡能力表现突出。 Nginx的几种负载均衡算法: 1、轮询(默认):每个请求按 … 阅读全文
一个nginx切割日志的脚本,自动删除7天前日志
1 2 3 4 5 6 7 8 9 10 11 12 13 |
#!/bin/bash LOGS_PATH=/home/wwwlogs YESTERDAY=$(date -d "yesterday" +%Y-%m-%d) #按天切割日志 mv ${LOGS_PATH}/access.log ${LOGS_PATH}/access_${YESTERDAY}.log #向 Nginx 主进程发送 USR1 信号,重新打开日志文件,否则会继续往mv后的文件写内容,导致切割失败. kill -USR1 `ps axu | grep "nginx: master process" | grep -v grep | awk '{print $2}'` #压缩 gzip -9 ${LOGS_PATH}/access_${YESTERDAY}.log #删除7天前的日志 cd ${LOGS_PATH} find . -mtime +7 -name "*20[1-9][3-9]*" | xargs rm -f exit 0 |
可以通过grep、awk找到nginx master也可以直接kill -USR1 pid [crayon-67676bd76dd8923863 … 阅读全文
Nginx遇到超长的post或get请求时,nginx会反回413、400、414错误。 post和get方式的解决办法: 针对post方式 client_max_body_size 10M; 指定允许客户端请求的最大的单个文件大小,如果请求大于指定的值,客户 … 阅读全文