Nginx反向代理/缓存配置

本文详细介绍了如何配置Nginx作为反向代理,使得客户端可以通过外网访问内网服务器,并讲解了如何配置缓存,包括proxy_pass、proxy_set_header等关键配置项,以及proxy_cache的工作原理和相关参数设置。
摘要由CSDN通过智能技术生成

什么是反向代理?

1、有两台服务器A和B属于同一内网段,但是A不通外网,B通外网,客户端C只有外网
2、C想通过B访问A,就需要在服务器B上做反向代理
3、客户端C通过外网与服务器B通信,服务器B通过内网转发客户端C的请求与服务器A通信。

测试场景:

服务器A 内网IP地址:192.168.234.128 部署了上一篇文章中的bbs网站
服务器B 内网IP:192.168.234.130 外网IP:192.168.111.128
客户端C 外网IP:192.168.111.101

需求:

客户端C能访问到服务器A的bbs网站

1.测试客户端C与服务器B通过外网通信:
在这里插入图片描述
#客户端C与服务器B的可以通过外网通信

2.新建并编辑服务器B的nginx虚拟主机配置文件:

[root@centos02 ~]# vi /etc/nginx/conf.d/nginx_proxy.conf

添加如下内容:

server
{
        listen 80;
        server_name test.bbs.com;

        location /
         {
            proxy_pass http://192.168.234.128;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
         }
}

配置说明:

proxy_pass:协议(http/https)+ web服务器IP(如果不是80端口,需要带上端口号,示例:192.168.234.128:8080)如果使用域名,需要在/etc/hosts文件中将域名映射到web服务器地址

当location需要匹配目录时,示例:location /dir/ {},proxy_pass需要配置成:ip:port/dir/;

proxy_set_header Host:如果不设置,web服务器有多个nginx虚拟主机的情况,就容易出错

proxy_set_header X-Real

  • 24
    点赞
  • 166
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值