nginx点滴yan

如何使用Nginx实现IP黑名单

空置进程数目 worker_processes,
空置每个进程的最大连接数目 worker_connections,
Nginx⽬录访问权限allow
Nginx登陆认证
⽇志管理
防盗链
虚拟主机
反向代理
访问限速
下载限速
nginx的优化:进程优化,长连接时间优化,数据压缩,客户端缓存
nginx缓存部署
nginx集群: 虚拟主机+反向代理+upstream分发模块组成的
Nginx集群默认算法
nginx高可用集群:keepalived
proxy_pass最后带/ 和不带/的区别和联系

https://blog.csdn.net/zhanghui200920061988/article/details/105132167

fastcgi_pass 和 proxy_pass 的区别在于
比如.php   ngxin就不支持,必须通过自己的服务器代理去处理。所有有了fasgcgi

工作进程的数量乘以线程的数量就是你的并发是多少。

宽广匹配

在这里插入图片描述

删除空行,删除#开头的行

在这里插入图片描述

ifconfig这个怎么理解

在这里插入图片描述

netstat -ntpl

这个netstat可以加-a看到那些是超时状态。
在这里插入图片描述
在这里插入图片描述

测试配置文件

在这里插入图片描述

为了测试速度limit_rate 100k; 生成一个300m文件。

在这里插入图片描述
在这里插入图片描述

limit_conn addr 1;

同时连接只能是一个。

limit-rate-after 前250m不限速度在这里插入图片描述

nginx优化
配置worker_processes 1; ⼯作进程数量 按CPU的总核⼼调整

查看cpu的核数
在这里插入图片描述
在这里插入图片描述

netstat -antpl | grep nginx | grep ESTABLISHED | ws -l 统计查看nginx的链接树

在这里插入图片描述

我们运行nginx的账号密码是谁,–user --group

在这里插入图片描述

chown www.www nginx -R

在这里插入图片描述

查看目录下的日志

在这里插入图片描述
在这里插入图片描述

启动apach的方式 systemctl start httpd

在这里插入图片描述

tcp的抓包工具

在这里插入图片描述

ip add show

把主服务器的配置文件拷贝到备份服务器,主服务器会不停的广播网络请求告诉别人我是主,我的优先级高

在这里插入图片描述

如果你给脚本权限,这个脚本无法执行的。这个nginx杀死后,无法重启的。

在这里插入图片描述

加了权限后,一切都正常了

在这里插入图片描述

1秒钟杀死一次nginx。

在这里插入图片描述

虚拟ip,当你配置了之keepalived反向代理之后,自动会出现。

在这里插入图片描述


打印打印打印打印打印打印打印打印打印打印打印打印打印打印打印
Nginx介绍
Nginx(“engine x”)是⼀款是由俄罗斯的程序设计师Igor Sysoev所开发⾼性能的 Web和 反向代理 服务器,也是⼀个 IMAP/POP3/SMTP 代理服务器。
• 轻量级的web服务器
• 延伸版本tengine(淘宝)、openresrt(章亦春)等
目录介绍
[root@localhost ~]# tree /usr/local/nginx
/usr/local/nginx
├── client_body_temp
├── conf                             # Nginx所有配置文件的目录
│   ├── fastcgi.conf                 # fastcgi相关参数的配置文件
│   ├── fastcgi.conf.default         # fastcgi.conf的原始备份文件
│   ├── fastcgi_params               # fastcgi的参数文件
│   ├── fastcgi_params.default       
│   ├── koi-utf
│   ├── koi-win
│   ├── mime.types                   # 媒体类型
│   ├── mime.types.default
│   ├── nginx.conf                   # Nginx主配置文件
│   ├── nginx.conf.default
│   ├── scgi_params                  # scgi相关参数文件
│   ├── scgi_params.default  
│   ├── uwsgi_params                 # uwsgi相关参数文件
│   ├── uwsgi_params.default
│   └── win-utf
├── fastcgi_temp                     # fastcgi临时数据目录
├── html                             # Nginx默认站点目录
│   ├── 50x.html                     # 错误页面优雅替代显示文件,例如当出现502错误时会调用此页面
│   └── index.html                   # 默认的首页文件
├── logs                             # Nginx日志目录
│   ├── access.log                   # 访问日志文件
│   ├── error.log                    # 错误日志文件
│   └── nginx.pid                    # pid文件,Nginx进程启动后,会把所有进程的ID号写到此文件
├── proxy_temp                       # 临时目录
├── sbin                             # Nginx命令目录
│   └── nginx                        # Nginx的启动命令
├── scgi_temp                        # 临时目录
└── uwsgi_temp                       # 临时目录
全局配置
user  nginx;   设置nginx服务的系统使用用户  
worker_processes  1;  工作进程数,一般和CPU数量相同 

error_log  /var/log/nginx/error.log warn;   nginx的错误日志  
pid        /var/run/nginx.pid;   nginx服务启动时的pid

events {
   
    worker_connections  1024;每个进程允许的最大连接数 10000
}
nginx 启动 nginx 重启
/usr/local/nginx/sbin/nginx
/usr/local/nginx/sbin/nginx -s reload
======= 
systemctl restart nginx.service
systemctl reload nginx.service
nginx -s reload
验证方法

netstat –ntpl
lsof -i :80

配置
#启动子进程程序默认用户
#user  nobody;
#一个主进程和多个工作进程。工作进程是单进程的,且不需要特殊授权即可运行;这里定义的是工作进程数量
worker_processes  1;

#全局错误日志的位置及日志格式
#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
   
    #每个工作进程最大的并发数
    worker_connections  1024;
}


#http服务器设置
http {
   
    #设定mime类型,类型由mime.type文件定义
    include       mime.types;
    
    #
    default_type  application/octet-stream;

    #日志格式
    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';
    #$remote_addr与$http_x_forwarded_for用以记录客户端的ip地址;
    #$remote_user:用来记录客户端用户名称;
    #$time_local: 用来记录访问时间与时区;
    #$request: 用来记录请求的url与http协议;
    #$status: 用来记录请求状态;成功是200,
    #$body_bytes_sent :记录发送给客户端文件主体内容大小;
    #$http_referer:用来记录从那个页面链接访问过来的;
    #$http_user_agent:记录客户浏览器的相关信息;

    #全局访问日志路径 
    #access_log  logs/access.log  main;
    #sendfile指令指定 nginx 是否调用sendfile 函数(zero copy 方式)来输出文件,对于普通应用,必须设为on。如果用来进行下载等应用磁盘IO重负载应用,可设置为off,以平衡磁盘与网络IO处理速度,降低系统uptime。
    sendfile        on;
    
    #此选项允许或禁止使用socke的TCP_CORK的选项,此选项仅在使用sendfile的时候使用
    #tcp_nopush     on;

    #长连接超时时间
    #keepalive_timeout  0;
    keepalive_timeout  65;

    #开启压缩
    #gzip  on;

    #配置虚拟主机
    server {
   
        #虚拟主机使用的端口
        listen       80;
        #虚拟主机域名
        server_name  localhost;

        #虚拟主机支持的字符集
        #charset koi8-r;

        #虚拟主机的访问日志路径
        #access_log  logs/host.access.log  main;

        #定义web根路径
        location / {
   
            #根目录路径
            root   html;
            #索引页
            index  index.html index.htm;
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #

        #根据错误码 返回对应的页面
        error_page   500 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值