nginx反向代理如何配置

1.什么是反向代理

首先反向代理是构建在服务端的,代理服务器将客户端请求转发给内部网络上的目标服务器;并将从目标服务器上得到的结果
返回给Internet上请求连接的客户端,此时代理服务器与目标主机一起对外表现为一个服务器。

2.nginx反向代理

Nginx 作为 web 服务器一个重要的功能就是反向代理,反向代理的指令不需要新增额外的模块,
默认自带 proxy_pass 指令,只需要修改配置文件(nginx.conf)就可以实现反向代理

3.nginx反向代理应用场景

    1.防止外网对内网服务器的恶性攻击、缓存以减少服务器的压力和访问安全控制
    2.负载均衡,将用户请求分配给多个服务器
    3.多业务系统下使用同一个ip或者域名进行访问时,以不同后缀进行区分,进行统一的访问入口
    4.解决浏览器跨域问题
    5.行为分析:构建反向代理、统一访问入口的场景,使用NGINX的日志及地理位置库插件来采集信息

4.常规反向代理配置


user  nginx;
worker_processes  1;
error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;

events {
    worker_connections  1024;
}

http {
    include       /etc/nginx/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"';
    access_log  /var/log/nginx/access.log  main;
    sendfile        on;
    #tcp_nopush     on;
    keepalive_timeout  65;
    #gzip  on;
    include /etc/nginx/conf.d/*.conf;
    #这里是实现xxx.cn跳转到www.xxx.cn
    server {
       listen 80;
       server_name xxx.cn;
       return 301 http://www.xxx.cn$request_uri;
    }
    server {
        listen       80;
        server_name  www.xxx.cn;
        root         /;
        location / {
            #在nginx中配置proxy_pass时,当在后面的url加上了/,相当于是绝对根路径,
            #则nginx不会把location中匹配的路径部分代理走;如果没有/,则会把匹配的路径部分也给代理走。
            #注意:这里的区别很重要(proxy_pass http://authsys; | proxy_pass http://authsys/;)
	        proxy_pass http://authsys/;
	        #Proxy Settings
	        proxy_set_header   Host             $host:$server_port;
	        proxy_set_header   X-Real-IP        $remote_addr;
	        proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
	        proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
	        proxy_max_temp_file_size 0;
	        proxy_connect_timeout      90;
	        proxy_send_timeout         90;
	        proxy_read_timeout         90;
	        proxy_buffer_size          4k;
	        proxy_buffers              4 32k;
	        proxy_busy_buffers_size    64k;
	        proxy_temp_file_write_size 64k;
	        client_max_body_size  50m;
      }

    }
    upstream authsys{
          server 192.168.1.106:8085;
    }
}


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值