Nginx代理

正向代理:客户端

反向代理:服务端

主机连接正向代理

系统代理:所有的网络请求都会走代理。

软件:可以单独指定代理。

配置代理服务器

shell 复制代码
# 修改Nginx配置文件的server
server {
  resolver: 223.5.5.5;
  listen: 80;
  location / {
    proxy_pass http://$host$request_uri;
    proxy_set_header HOST $host;
    proxy_buffers 256 4k;
    proxy_max_temp_file_size 0k;
    proxy_connect_timeout 30;
    proxy_send_timeout 60;
    proxy_read_timeout 60;
    proxy_next_upstream error timeout invalid_header http_502;
  
  }
}
此时的nginx就不代表一个网站了,只做请求转发,单纯的代理。该配置只代理的http协议,https不行。

反向代理

主要是为了保护源站

反向代理讲请求转发给服务器,服务器将响应结果回复给代理,再由代理响应给客户端。

反向代理还能做负载均衡,将大量的请求分发给服务器集群(多台服务器提供一个服务)。

shell 复制代码
http {
    include               mime.types;
    default_type          application/octet-stream;
    charset               utf-8;
    sendfile              on;
    keepalive_timeout     65;
    server {
        listen       80;
        server_name  localhost;
        location / {
             # 192.168.61.140是源站的IP地址  将收到的请求转发给192.168.61.140服务器
            proxy_pass     http://192.168.61.140;
            # 设置host,防止请求域名丢失,不然代理服务器直接转发请求ip,会导致服务端不知道客户端真实访问的是哪个域名。
            proxy_set_header Host $host;

            # 设置真实ip地址记录,下面两个都是一个意思,实际中两个都会用。
            proxy_set_header X-Real_IP $remote_addr;
            proxy_set_header X-Forwarded_for $remote_addr;
        }
    }
}

负载均衡

在代理服务器的nginx配置文件的http中添加资源池,server的外面

shell 复制代码
http {
    include       mime.types;
    default_type  application/octet-stream;
    charset utf-8;
    # 资源池
    upstream web {
      # 集群服务器中的两个ip
      server 192.168.223.100;
      server 192.168.223.100;
    }
    server {
        listen       80;
        server_name  localhost;
        location / {
            proxy_pass htttp:// web; # 资源池的路径
        }
    }

    
}
相关推荐
苹果醋319 小时前
element-ui源码阅读-样式
java·运维·spring boot·mysql·nginx
向上的车轮1 天前
Actix Web 不是 Nginx:解析 Rust 应用服务器与传统 Web 服务器的本质区别
前端·nginx·rust·tomcat·appche
摇滚侠2 天前
Nginx 与 F5 负载均衡的区别
nginx·负载均衡
huangql5202 天前
Nginx 从零到精通 - 最详细的循序渐进教程
开发语言·网络·nginx
苦逼IT运维2 天前
Kubernetes 双层 Nginx 容器环境下的 CORS 问题及解决方案(极端情况)
运维·nginx·容器·kubernetes·jenkins·运维开发·ci
cqwuliu2 天前
通过nginx+openssl自签名证书部署https应用并解决不安全问题
nginx·安全·https
my一阁3 天前
tomcat web实测
java·前端·nginx·tomcat·负载均衡
念念不忘 必有回响3 天前
Nginx前端配置与服务器部署详解
服务器·前端·nginx
K_i1344 天前
Ansible自动化部署ECS与Nginx全流程
nginx·自动化·ansible
宁&沉沦4 天前
Nginx清除浏览器缓存的三个缓存响应头的关系详解
运维·nginx·缓存