nginx作为web服务器一个重要的功能就是反向代理,当然你也可以使用nginx配置正向代理,这篇文章主要给大家介绍了关于Nginx反向代理的相关资料,需要的朋友可以参考下
目录
一、反向代理准备工作
1.在linux系统中安装tomcat
2.启动tomcat
3.对外开放访问的端口
4.测试访问tomcat
二、反向代理案例(一)
二、反向代理案例(二)
实现效果
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