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; # 资源池的路径
        }
    }

    
}
相关推荐
吴声子夜歌4 小时前
Nginx应用与运维——Nginx HTTP模块详解(动态赋值功能模块)
运维·nginx·http
姜鱼问生4 小时前
三层防火墙排查:Nginx 配好了浏览器还打不开
nginx·安全
小白的码BUG之路9 小时前
Docker -- 构建nginx镜像,启动vue项目
vue.js·nginx·docker
yume_sibai9 小时前
04-Nginx部署实战完全指南(前端部署 + 后端代理 + 监控告警 + 故障排查)
运维·前端·nginx
程序员清风19 小时前
Docker、Nginx 与 Kubernetes 部署 AI 后端服务
nginx·docker·kubernetes
吴声子夜歌1 天前
Nginx应用与运维——Nginx核心配置指令(一)
运维·nginx
谢亮_vipxieliang1 天前
一套 Compose 搭起完整开发环境:MySQL + Redis + Nginx
redis·mysql·nginx·docker
xbzb1 天前
Nginx 反向代理总 404?Location 匹配与 proxy_pass 尾斜杠避坑手册
linux·运维·nginx·虚拟主机
ShayneLee81 天前
Nginx只开一个端口!能做什么?(一)
运维·nginx
天衍四九-1 天前
Docker Compose企业实战系列(一):LNMP环境一键部署(Nginx\+MySQL\+PHP)
mysql·nginx·docker