反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。

这里讲得很直白。反向代理方式实际上就是一台负责转发的代理服务器(Nginx),貌似充当了真正服务器的功能,但实际上并不是,代理服务器只是充当了转发的作用,并且从真正的服务器(Tomcat)那里取得返回的数据。这样说,其实nginx完成的就是这样的工作。我们让nginx监听一个端口,譬如80端口,但实际上我们转发给在8080端口的tomcat,由它来处理真正的请求,当请求完成后,tomcat返回,但数据此时没直接返回,而是直接给nginx,由nginx进行返回,这里,我们会以为是nginx进行了处理,但实际上进行处理的是tomcat。

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

虽然配置反向代理比较麻烦,但是它的作用性还是很大滴。一方面是为了安全性考虑,另一方面是提供应用的访问性能。说到上面的方式,也许很多人又会想起来,这样可以把静态文件交由nginx来进行处理。对,很多用到nginx的地方都是作为静态伺服器,这样可以方便缓存那些静态文件,比如CSS,JS,html,htm等文件。

接下来配置Ngin的反向代理Tomcat。

1. 前期准备

nginx 安装成功

tomcat 安装成功

2. 更改nginx的配置文件

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

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

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

5. 删除 location / 节点,避免全部请求被拦截。新增 location ~ \.jsp$ 节点和 location ~ \.(html|js|css|png|gif|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完成。

参考文章:

http://www.360doc.com/myindex.aspx

http://www.linuxidc.com/Linux/2015-03/115208.htm

nginx结合tomcat一起使用的更多相关文章

  1. Nginx服务器之Nginx与tomcat结合访问jsp

    本文使用linux centos系统 本文概述: JSP是一种动态网页技术标准.使用的方式是在HTML文件中插入程序段和JSP标记,而形成JSP文件.使用JSP开发WEB应用可以跨平台开发.但jsp需 ...

  2. Nginx 服务器 之Nginx与tomcat实现负载均衡

      本文讲解我们如何使用Nginx做反向带服务器,实现nginx与tomcat服务器集群做负载均衡. 一.nginx与tomcat实现负载均衡 1.在/usr/local/ngnix/conf  创建 ...

  3. 配置apache和nginx的tomcat负载均衡

    概述 本篇文章主要介绍apache和nginx的相关配置,tomcat的相关安装配置我在前面有写过一篇,详细介绍通过两种配置方法配置nginx. tomcat配置参考:http://www.cnblo ...

  4. virtualbox搭建ubuntu server nginx+mysql+tomcat web服务器1 (未完待续)

    virtualbox搭建ubuntu server nginx+mysql+tomcat web服务器1 (未完待续) 第一次接触到 linux,不知道linux的确很强大,然后用virtualbox ...

  5. (转)Nginx SSL+tomcat集群,request.getScheme() 取到https正确的协议

    转自http://www.cnblogs.com/interdrp/p/4881785.html 最近在做一个项目, 架构上使用了 Nginx +tomcat 集群, 且nginx下配置了SSL,to ...

  6. nginx和tomcat实现反向代理、负载均衡和session共享

    这类的文章很多,nginx和tomcat实现反向代理.负载均衡实现很容易,可以参照http://blog.csdn.net/liuzhigang1237/article/details/8880752 ...

  7. nginx 与 tomcat 集群 一二事 (0) - 简单介绍

    最近看了nginx以及tomcat的集群,通俗的做一下简单总结吧 nginx 是一个http服务器,是由俄罗斯人发明的,目前主流的服务器,作为负载均衡服务器,性能非常好,最高支持5万个并发连接数,在淘 ...

  8. 基于nginx的tomcat负载均衡和集群

    要集群tomcat主要是解决SESSION共享的问题,因此我利用memcached来保存session,多台TOMCAT服务器即可共享SESSION了. 你可以自己写tomcat的扩展来保存SESSI ...

  9. Nginx与Tomcat、Client之间请求的长连接配置不一致问题解决[转]

    http://bert82503.iteye.com/blog/2152613 前些天,线上出现“服务端长连接与客户端短连接引起Nginx的Writing.Active连接数过高问题”,这个是由于“服 ...

  10. CentOS Nginx+jdk+tomcat 环境搭建

    一.jdk安装 jdk下载地址:http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloa ...

随机推荐

  1. php采集

    采集思路   采集程序的思路很简单大体可以分为以下几个步骤: 1. 获取远程文件源代码(file_get_contents或用fopen).    2.分析代码得到自己想要的内容(这里用正则匹配,一般 ...

  2. xpath(待补充)

    from lxml import etree html=""" <div> <ul> <li>1</li> <li ...

  3. HDU - 3829 Cat VS Dog (二分图最大独立集)

    题意:P个小朋友,每个人有喜欢的动物和讨厌的动物.留下喜欢的动物并且拿掉讨厌的动物,这个小朋友就会开心.问最多有几个小朋友能开心. 分析:对于每个动物来说,可能既有人喜欢又有人讨厌,那么这样的动物实际 ...

  4. python网络编程——IO多路复用之select

    1 IO多路复用的概念 原生socket客户端在与服务端建立连接时,即服务端调用accept方法时是阻塞的,同时服务端和客户端在收发数据(调用recv.send.sendall)时也是阻塞的.原生so ...

  5. sublime text 3 配置在浏览器中快速预览

    1.打开Sublime,在菜单栏找到 preferences->package control->输入install package,回车 2.在弹出的输入框里输入SideBarEnhan ...

  6. linux 搭建 nexus maven私服仓储

    一.下载 1.创建下载软件包目录  mkdir /home/install 2.在/home/install下载nexus包,或者将下载好的nexus压缩包上传至/home/install wget ...

  7. [转]hadoop2.x常用端口及定义方法

    端口 Hadoop集群的各部分一般都会使用到多个端口,有些是daemon之间进行交互之用,有些是用于RPC访问以及HTTP访问.而随着Hadoop周边组件的增多,完全记不住哪个端口对应哪个应用,特收集 ...

  8. 修改AdminLTE左侧菜单展开延迟

    AdminLTE左侧菜单展开会有半秒钟的延迟. 看起来会慢半拍. 可修改 admin/dist/js/app.min.js中的 animationSpeed值(默认为500) 如下:

  9. [pixhawk笔记]1-编译过程

    好久没有编译过PIXHAWK了,由于项目需要,又买了一个pixhawk2,由于每次编译都会出现新的问题,这次写帖子将过程记录下来. 环境:WIN10+Ubuntu16.04 64位(VMware Wo ...

  10. 20145217《网络对抗》 Web安全基础实践

    20145217<网络对抗> Web安全基础实践 一.实践任务 本实践的目标理解常用网络攻击技术的基本原理.Webgoat实践下相关实验. 二.实验后回答问题 (1)SQL注入攻击原理,如 ...