1、实现效果
使用nginx反向代理,根据访问的路径跳转到不同端口的服务中nginx监听端口为9001
访问 http://192.168.17.129:9001/edu/ 直接跳转到 127.0.0.1:8080
访问 http:// 192.168.17.129:9001/vod/ 直接跳转到 127.0.0.1:8081
2、准备工作
(1)准备两个 tomcat 服务器,一个 8080 端口,一个 8081 端口
(2) 创建文件夹和测试页面 创建tomat8080 和tomat8081
(3)将apache-tomcat7.0.70 复制到新建的两个目录tomat8080和tomcat8081下,
(4)在tomcat8080/apache-tomcat7.0.79/webapps 创建 edu 目录并且新建a.html
(4.1)在edu目录创建a.html ,a.html 文件内容时8080!!
(4.2) 在tomcat8081/apache-tomcat7.0.79/webapps 创建 vod 目录并且新建a.html
(5) 启动tomcat8080下的tomcat 的server.xml 文件不用修改直接到/bin目录下 ./startup.sh 启动
修改tomcat8081下的tomcat的server.xml 下图红框是修改的3出配置,启动tomcat8081下的tomcat
3、具体配置
location 指令说明
该指令用于匹配URL
语法如下
location [ = | ~ | ~* | ^~ ] uri {
}
1、 =:用于不含正则表达式的uri前,要求请求字符串与uri严格匹配,如果匹配成功,就停止继续向下搜索并立刻处理该请 求
2、~ : 用于表示uri包含正则表达式,并且区分大小写
3、~*:用于表示uri包含正则表达式,并且不区分大小写
4、^~:用于不含正则表达式的 uri 前,要求 Nginx 服务器找到标识 uri 和请求字符串匹配度最高的 location 后,立即使用此 location 处理请求,而不再使用 location块中的正则 uri 和请求字符串做匹配
注意**如果uri包含正则表达式,则必须要有 ~ 或者 ~* 标识
4、 开放端口号8080、80801、9001 也可以直接关闭防火墙
service iptables stop (关闭防火墙)
到/usr/local/nginx/sbin 目录下重启 nginx
./nginx -s stop
./nginx
也可以 ./nginx -s reload (重新加载配置)
5、测试