开发者社区> 余二五> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

配置Nginx反向代理Tomcat

简介:
+关注继续查看

   反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。这是百度百科上反向代理的定义,如果你对该定义有些模糊的话,继续向下看。


    实际上,我们配置了Nginx反向代理后,系统的物理结构可能是下面这样子的,当我们访问一个域名/IP地址时,实际访问的是我们配置的Nginx服务器,Nginx服务器的真实身份只是代理,它代理了许多不同的真正服务器(如下图中的Tomcat,Resin,IIS等)。这就是反向代理。

wKiom1UH3AaQwcBEAAGTOKu1YLQ169.jpg

    虽然配置反向代理比较麻烦,但是它的作用性还是很大滴。一方面是为了安全性考虑,另一方面是提供应用的访问性能。至于原理呢,本文就不详细介绍了。接下来配置Ngin的反向代理Tomcat。


    1. 前期准备


    nginx 安装成功


    tomcat 安装成功


    2. 更改nginx的配置文件

    

    更改nginx.conf文件,在http/server/location层次结构下,添加proxy_pass http://localhost:7080; 一句话即可。注意不要放了;结尾。

wKiom1UH3DnDUBQlAAGVaC967Wc487.jpg


  3. 重启nginx,在浏览器中输入nginx的访问地址,显示的就是Tomcat的访问地址。


wKioL1UH3YHSfU7yAAXyKjbtG4c490.jpg


    4. 现在虽然nginx反向代理成功了,但是为了更好的发挥nginx的性能。我们将Tomcat的js、html、图片等静态文件配置到nginx上进行缓存,这样就可以提高应用的访问效率了。


    5. 删除 location / 节点,避免全部请求被拦截。新增 location ~ \.jsp$ 节点和 location ~ \.(html|js|css|png|gif|jpg)$ 节点,如下图。


wKioL1UH3cDxmtSQAAFz2BqajPM851.jpg

    6. 访问http://10.0.6.108:7788,返回nginx 404。这是因为匹配的location,应用自动跳转到nginx的404.


    访问http://10.0.6.108:7788/index.jsp,返回到tomcat页面。因为jsp会自动匹配配置的location。


    访问http://10.0.6.108:7788/tomcat.png,也能正确显示tomcat的logo。说明nginx配置的静态文件location是生效的。


    至此,Nginx配置反向代理Tomcat完成。





本文转自 genuinecx 51CTO博客,原文链接:http://blog.51cto.com/favccxx/1621474,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
《Nginx 代理系统常用手册》
立即下载
1._Alibaba_Cloud_Whitepaper_-_Data_Security_is_Now_More_Important_Than_Ever
立即下载
3D/AR技术在新零售商业场景中的应用
立即下载