飞奔的炮台 发表于 2021-11-15 13:26:37

Nginx反向代理学习实例教程

nginx作为web服务器一个重要的功能就是反向代理,当然你也可以使用nginx配置正向代理,这篇文章主要给大家介绍了关于Nginx反向代理的相关资料,需要的朋友可以参考下
目录

[*]一、反向代理准备工作

[*]1.在linux系统中安装tomcat
[*]2.启动tomcat
[*]3.对外开放访问的端口
[*]4.测试访问tomcat

[*]二、反向代理案例(一)

[*]1.实现效果
[*]2.具体配置
[*]3.测试

[*]二、反向代理案例(二)

[*]实现效果
[*] 1.准备工作
[*]2.具体配置
[*]location 指令说明
[*]最终测试

[*]总结

一、反向代理准备工作

1.在linux系统中安装tomcat
将tomcat解压到/usr/src下。启动需要jdk环境。没有jdk环境的装一下,我centos7自带jdk1.8。


2.启动tomcat
进入tomcat的bin目录中,有个startup.sh文件。

./startup.sh启动tomcat服务器


3.对外开放访问的端口
查看当前开放的端口号


firewall-cmd --list-all
设置开放的端口号


firewall-cmd --add-port=80/tcp --permanent
firewall-cmd --add-port=8080/tcp --permanent
重启防火墙


firewall-cmd --reload

4.测试访问tomcat
http://192.168.1.173:8080/

自此前期准备工作完毕!!

二、反向代理案例(一)

1.实现效果
打开浏览器,在浏览器地址栏输入www.123.com,跳转到linux系统tomcat页面


2.具体配置
第一步:在本地 /etc/hosts文件添加

第二步 在nginx进行请求转发的配置(反向代理配置)

cd /usr/local/nginx/conf
vim nginx.conf
修改添加一下内容


3.测试
访问www.123.com

通过访问nginx的ip访问tomcat,成功!!!!

二、反向代理案例(二)

实现效果
使用nginx反向代理,根据访问的路径跳转到不同端口的服务中,nginx监听端口为9001

[*]访问http://192.168.1.173/edu/ 直接跳转到192.168.1.173:8080
[*]访问http://192.168.1.173:9001/vod/ 直接跳转到192.168.1.173:8081

1.准备工作
(1)准备两个tomcat服务器,一个8080端口,一个8081端口
(2)创建2个文件夹,分别放入tomcat的压缩包,解压,然后修改其中一个tomcat中的conf中的server.xml文件,将端口改为8081。
(3)在webapps文件下创建分别创建edu、vod文件夹,文件夹中创建a.html测试页面显示端口号。

2.具体配置
(1)找到nginx配置文件,进行反向代理配置

(2)开放对外访问的端口号 9001 8080 8081

location 指令说明
该指令用于匹配url
语法如下:


location [ = | ~ | ~* | ^~] uri {

}
1、= :用于不含正则表达式的 uri 前,要求请求字符串与 uri 严格匹配,如果匹配
成功,就停止继续向下搜索并立即处理该请求。
2、~:用于表示 uri 包含正则表达式,并且区分大小写。
3、~*:用于表示 uri 包含正则表达式,并且不区分大小写。
4、^~:用于不含正则表达式的 uri 前,要求 nginx 服务器找到标识 uri 和请求字
符串匹配度最高的 location 后,立即使用此 location 处理请求,而不再使用 location
块中的正则 uri 和请求字符串做匹配。
注意:如果 uri 包含正则表达式,则必须要有 ~ 或者 ~ 标识。*

最终测试


总结
到此这篇关于nginx反向代理学习的文章就介绍到这了,更多相关nginx反向代理内容请搜索CodeAE代码之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持CodeAE代码之家!
原文链接:https://blog.csdn.net/qq_17405183/article/details/120565850

http://www.zzvips.com/article/203285.html
页: [1]
查看完整版本: Nginx反向代理学习实例教程