• 欢迎访问显哥博客,本网站纯属学习技术,绝无商业用途,欢迎小伙伴们共同学习!研究技术!QQ:52249909 加我QQ
  • 世界75亿人,这么小的概率,能认识你,是我一生的幸运,不妨加个QQ接触一下:52249909 加我QQ

【Linux运维架构】第十三篇 Nginx代理服务详解实战

Linux架构 lixian 5年前 (2020-03-02) 1174次浏览 1个评论 扫描二维码
文章目录[隐藏]

Nginx代理服务常见模式

Nginx作为代理服务,按照应用场景模式进行总结,代理分为正向代理、反向代理

正向代理

正向代理,(内部上网)客户端<—>代理->服务端
【Linux运维架构】第十三篇 Nginx代理服务详解实战

反向代理

反向代理,用于公司集群架构中,客户端->代理<—>服务端
【Linux运维架构】第十三篇 Nginx代理服务详解实战

正向代理与反向代理的区别

1.区别在于形式上服务的”对象”不一样

2.正向代理代理的对象是客户端,为客户端服务

3.反向代理代理的对象是服务端,为服务端服务

nginx代理实践

1.环境准备

主机 内网 外网
lb01 10.0.0.4 172.16.1.4
web01 10.0.0.7 172.16.1.7

2.配置web01网站

[root@web01 conf.d]# vim proxy.conf
server {
    listen 80;
    server_name www.linux.com;

    location / {
        root /code/proxy;
        index index.html;
    }
}

[root@web01 ~]# systemctl restart nginx

3.编写网站

[root@web01 ~]# echo "wo shi web01" > /code/proxy/index.html

4.配置代理

[root@lb01 ~]# vim /etc/nginx/conf.d/daili.conf
server {
    listen 80;
    server_name www.linux.com;

    location / {
        proxy_pass http://10.0.0.7;
    }
}

5.配置hosts,域名指向代理服务器

10.0.0.4 www.linux.com

6.访问页面查看

浏览器访问www.linux.com

Nginx代理常用参数

1.添加发往后端服务器的请求头信息

#代理服务器带着域名向后端请求
proxy_set_header Host $http_host;
#将$remote_addr的值放进变量X-Real-IP中,$remote_addr的值为客户端的ip
proxy_set_header X-Real-IP $remote_addr;
#客户端通过代理服务访问后端服务, 后端服务通过该变量会记录真实客户端地址
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

2. 代理到后端的TCP连接、响应、返回等超时时间

#nginx代理与后端服务器连接超时时间(代理连接超时)
proxy_connect_timeout 60s;
#nginx代理等待后端服务器的响应时间
proxy_read_timeout 60s;
#后端服务器数据回传给nginx代理超时时间
proxy_send_timeout 60s;

3.proxy_buffer代理缓冲区

#nignx会把后端返回的内容先放到缓冲区当中,然后再返回给客户端,边收边传, 不是全部接收完再传给客户端
proxy_buffering on;
#设置nginx代理保存用户头信息的缓冲区大小
proxy_buffer_size 32k;
#proxy_buffers 缓冲区
proxy_buffers 8 128k;

本站博主 , 版权所有丨如未注明 , 均为原创
转载请注明原文链接:【Linux运维架构】第十三篇 Nginx代理服务详解实战
喜欢 (1)

您必须 登录 才能发表评论!

(1)个小伙伴在吐槽
  1. At the beginning, I was still puzzled. Since I read your article, I have been very impressed. It has provided a lot of innovative ideas for my thesis related to gate.io. Thank u. But I still have some doubts, can you help me? Thanks.
    gate io2023-05-12 23:40