nginx反向代理tomcat和apache

实验环境:centos7(192.168.100.3)+nginx,centos6(192.168.100.4)+tomcat+httpd(apache)
两台均关闭防火墙和selinux

安装

nginx源码包安装,先安装依赖包gcc-c++、openssl、openssl-devel、pcre、pcre-devel、zlib、zlib-devel
然后在nginx目录执行 ./configure,make,make install
tomcat无需安装,但需要先安装java,配置环境变量。到tomcat的webapp/ROOT下,修改index.jsp为“This is tomcat1111”
httpd安装采用yum方式,直接在shell执行yum install httpd即可安装,修改/var/www/html/index为“This is apache1111”
浏览器访问如下图:
tomcat页面,访问的是8080端口
tomcat页面,访问的是8080端口

apache页面,访问的是80端口
apache页面,访问的是80端口

nginx配置

apache和tomcat无需配置,使用默认配置即可
nginx配置文件为/usr/local/nginx/conf/nginx.conf(/usr/local是nginx安装目录)

在server上方添加新的配置upstream,在location里加入一行proxy_pass配置,如下图:
nginx反向代理配置:
nginx反向代理配置

配置之后,到/usr/local/nginx/sbin/目录下,执行 ./nginx启动nginx,默认访问端口为80,结果如下图:
访问nginx得到apache的页面,刷新之后得到tomcat的页面
访问nginx得到apache的页面

刷新一下,得到tomcat的页面

至此,简单的实现了nginx反向代理。
其实,修改nginx配置文件中的upstream配置项,可以反向代理其他网站,只需把server地址修改一下,地址也可以写成域名形式,然后到/usr/local/nginx/sbin/目录下,执行./nginx -s reload,可以加载新的配置。

猜你喜欢

转载自blog.csdn.net/cyan_grey/article/details/79965285