Nginx的反向代理之针对指定的 location和特定资源(详细版)

本文档详细介绍了如何在CentOS8系统中配置Nginx和Apache进行代理,通过10.0.0.8和10.0.0.18两台主机,以及10.0.0.100作为客户端进行实验。实验内容包括设置hosts文件,创建特定资源,代理特定location,以及针对特定资源的代理配置,并在Ubuntu系统上进行测试。实验中强调了location配置后的uri处理,以及正则表达式模式下proxy_pass的使用规则。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实验前须知;

因为这个实验是要在网页显示最终结果

10.0.0.8 proxy
10.0.0.18 web   # 两台centos8的主机;
10.0.0.100 Ubuntu系统做客户端

所以win里的hosts和Ubuntu的hosts都要设置
win里hosts是
在这里插入图片描述
Ubuntu里的hosts是
在这里插入图片描述
==开始实验
在这里插入图片描述

一 针对指定的 location

首先.在18上 建立一个特定资源 比如api
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
8设置后 ;在Ubuntu上测试
#8080后面无uri,即无 / 符号,需要将location后面url 附加到proxy_pass指定的url后面,此行为类似于root

在这里插入图片描述
#重启Nginx并访问测试:

[root@ubuntu ~]#curl www.magedu.org/api/index.html

在这里插入图片描述
#Apache的访问日志:
在这里插入图片描述

说明;

#如果location定义其uri时使用了正则表达式模式(包括~,~*,但不包括^~),则proxy_pass之后必须不能使用uri; 即不能有/ ,用户请求时传递的uri将直接附加至后端服务器之后

二、针对特定的资源实现代理

在这里插入图片描述

1.如果在8上设置
在这里插入图片描述
2.在18上 设置图片
在这里插入图片描述
3. 然后在网页测试 打开
在这里插入图片描述
三、拓展

如果在这后面加上/
在这里插入图片描述
语法会提示报错的
在这里插入图片描述
而我尝试加上80端口后测试,还是报错在这里插入图片描述

到了这一步,我又试了一下8080的端口,结果还是一样
所以这里要特别的注意;

设置完毕,谢谢观赏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值