NGINX个人总结(补充修正中)

参考链接:【Nginx用法】nginx location正则表达式写法,详解Nginx location 匹配规则(很详细哦)_No8g攻城狮的博客-CSDN博客

代理

正向代理

目的:由代理服务器访问真正的服务器(隐藏了客户端的ip)

应用:通常的翻墙技术

反向代理

目的:隐藏真正的服务器ip。由代理服务器访问真正的服务器(有可能为内部网络)

区别

正向:通过本地配置代理(客户端配置)来实现(配置代理服务器,由代理服务器将请求转发,最后返还给客户端),突破资源的访问限制;

反向:通过远程配置代理(服务端配置)来实现(一般来说由服务器部署人员进行部署,从而实现代理的动静分离、负载均衡、安全防护等)

负载均衡

代码展示

http{
	resolve 114.114.114.114 #为server指定域名解析器
	upstream myserver {
        server 192.168.220.131:8080 max_fails=3 fail_timeout=15;
        server 192.168.220.131:8081 backup;#所有服务器不能使用时才使用的
        server 192.168.220.131:8082 max_conns=100;
        server 192.168.220.131:8083 weight=10 #权重规则默认值为1
        server www.example.com
        fair;#执行公平原则,响应时间原则
        ip_hash;#执行同一个用户访问在同一个服务器上面,实现sesion的不丢失
        
    }
    server {
        listen       80;
        server_name  192.168.220.131;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;
        # 设置请求的大小容量
        client_max_body_size 20m;

        location / {
            root   html;
           proxy_pass http://myserver;
            index  index.html index.htm;
        }
	}
}
 

代码解释

upstream  【服务名】: 配置负载均衡相关信息的,【服务名】相当一个虚拟的域名,里面配置多个访问的地址;

max_fails:最大失败次数,默认值为1.超过最大次数时,在fail_timeout之内不会再次向该服务器发送请求。

fail_timeout:失败超时时间,和max_fail配合使用,默认值为10s

backup:备份服务器,所有服务器挂了才会执行的服务器

max_conns:最大连接数,超过这个连接数,不会再向该服务器发送请求

resolve:为server指定的域名提供域名解析器

ip_hash:根据ip进行计算分配到不同的服务器,局限性非常大,新增或者减少服务器或者服务器宕机均会影响,而且如果有前置的负载均衡策略和后置的负载均衡侧率都会产生影响

url_hash:(包含请求的参数)一致性hash,可以设置为访问资源时的策略,比如下载大型文件,分别缓存在不同的服务器上面,此时设置通过url_hash时就可以同一个资源请求访问到同一台服务器上面,然后就访问了同样的资源,不用过多的缓存资源

hash $uri : uri不包含请求的参数

其他的解释暂时不说,继续向下看

动静分离

代码演示

server {
    listen 80;
    server_name 192.168.220.131;
    root d:
    
    location /html/ {
        root /static/; #映射在根目录下的static文件下
        autoindex on;
        charset utf-8;
    }
    location /image/ {
        root /static/;
        autoindex on;
        charset utf-8;
        expire 3d;
    }

     location / {
        index index.htm index.html index.jsp #会依次尝试 index.htm index.html index.jsp
    }
}

nginx常用命令

linux下:

./nginx 启动

./nginx -s stop 停止

./nginx -s reload 重新加载

windows下

nginx 

nginx -s  stop

nginx -s reload 

taskkill /f /t /im nginx.exe

 root和alias区别

# 实际访问路径 /data/www/index/
location /index/ {

        root /data/www/;

}
# 实际访问路径 /data/www/
location /index/ {

        alias /data/www/;

}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值