简单实现nginx+tomcat的反向代理与动静分离_Tomcat

windows下测试 nginx+tomcat实现java web项目的动静分离

1. 安装nginx,访问静态资源

安装成功后,启动nginx,浏览器输入http://localhost/出现欢迎页面.

在nginx下依次建立目录 static\test1\js\common,并将jquery.XX.js 放进去。

PS: static 代表静态文件主目录,test1 代表tomcat下的项目名称,本机使用jquery-1.12.1.min.js

修改配置文件nginx.conf,添加如下配置:

 #正则匹配以static开头的请求,比如/test1/static/js...

 location ^~/test1/static/ {
    alias   static/test1/;    #alias会把location后面配置的路径丢弃掉; 使用alias时,目录名后面一定要加/
 }

 重启nginx,浏览器输入http://localhost/test1/static/js/common/jquery-1.12.1.min.js 能够访问成功。

 

2. 构建java web项目

 安装jdk,tomcat,myeclipse或idea等 ,创建web项目 test1。

 将test1欢迎页设置成index.jsp,部署在tomcat下,端口号8080

 浏览器输入http://localhost:8080/test1/能够访问成功。

 

3. 引入nginx下的静态资源

 在index.jsp下引入nginx的jquery文件:

src="http://localhost/test1/static/js/common/jquery-1.12.1.min.js"

同时编写jquery测试脚本如下:

  <script type="text/javascript">
    //jquery语法,能够成功alert说明jquery引入成功
    $(function() {
    alert("测试动静分离成功!");
    })
   </script>

  在nginx下配置test1项目的反向代理,修改nginx.conf,添加如下配置:

   #test1项目请求--> 反向代理到8080,其中^~/test1/static/请求除外
   location /test1/ {
       proxy_pass http://localhost:8080;   
   }

4. 测试反向代理和动静分离

重启nginx,重启tomcat!

浏览器输入http://localhost/test1/,请求会被nginx转发到8080端口的tomcat下面test1。

如果一切OK,浏览器会返回index.jsp的输出,并且加载nginx下的jquery文件,弹出提示框。

本机截图:

         

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索tomcat
, nginx
反向代理
nginx tomcat动静分离、nginx 动静分离配置、nginx 动静分离、nginx动静分离原理、nginx实现动静分离,以便于您获取更多的相关知识。

时间: 2024-09-22 08:31:23

简单实现nginx+tomcat的反向代理与动静分离_Tomcat的相关文章

自动化Nginx服务器的反向代理的配置方法

  这篇文章主要介绍了自动化Nginx服务器的反向代理的配置方法,反向代理是Nginx服务器的招牌功能,需要的朋友可以参考下 如果可以减少过多的外部隔离的API和简化部署的细节 这会是非常好的. 在以前的文章中,我解释了"一些使用反向代理的好处".在我目前的项目里,我们已经构建分布式面向服务的架构,也显式提供了一个HTTP API,我们使用反向代理将请求路由通过API路由给单个组件.我们选择了Nginx Web这个优秀的服务器作为我们的反向代理,它快速.可靠且易于配置.我们通过它将多个

apache或者nginx一个域名反向代理多个应用系统

问题描述 apache或者nginx一个域名反向代理多个应用系统 一个域名三个服务http://www.abc.com/test1/ 192.168.0.8:121http://www.abc.com/test2/ 192.168.0.8:122http://www.abc.com/test3/ 192.168.0.8:123怎么配置啊? 解决方案 http{ ... server { location /test1/ { proxy_pass http://192.168.0.8:121 pr

Nginx中实现反向代理

Nginx的2种用途 静态内容的web服务器: 反向代理服务器: Nginx作为反向代理的特点 接收用户请求是异步的,即先将用户请求全部接收下来,再一次性发送后后端web服务器,极大的减轻后端web服务器的压力: nginx代理和后端web服务器间无需长连接: 发送响应报文时,是边接收来自后端web服务器的数据,边发送给客户端的: 涉及的模块 Proxy:标准的HTTP模块,实现反向代理功能 Upstream:标准的HTTP模块,对后端web服务器调度做负载均衡功能: FastCGI:标准HTT

nginx 详解反向代理负载均衡

什么是反向代理负载均衡 使用代理服务器可以将请求转发给内部的Web服务器,使用这种加速模式显然可以提升静态网页的访问速度.因此也可以考虑使用这种技术,让代理服务器将请求 均匀转发给多台内部Web服务器之一上,从而达到负载均衡的目的.这种代理方式与普通的代理方式有所不同,标准代理方式是客户使用代理访问多个外部Web 服务器,而这种代理方式是多个客户使用它访问内部Web服务器,因此也被称为反向代理模式. 实现这个反向代理能力并不能算是一个特别复杂的任务,但是在负载均衡中要求特别高的效率,这样实现起来

Nginx学习之反向代理WebSocket配置实例

写在开始 去年,做过一款竞赛打分的APP.具体需求,同组教师之间可以相互通信,及时通知同组人员,其他组员做了那些操作(当然,这只是针对特定操作). 实现方案 采用目前比较成熟的WebSocket技术,WebSocket协议为创建客户端和服务器端需要实时双向通讯的webapp提供了一个选择.其为HTML5的一部分,WebSocket相较于原来开发这类app的方法来说,其能使开发更加地简单.大部分现在的浏览器都支持WebSocket,比如Firefox,IE,Chrome,Safari,Opera,

Nginx服务器作反向代理时的缓存配置要点解析_nginx

这里给出示例,并详解. http { [...] [...] proxy_cache_path /data/nginx/cache/one levels=1:2 keys_zone=one:10m max_size=10g; proxy_cache_key "$host$request_uri"; server { server_name www.jb51.net jb51.net; root /home/www.jb51.net/web; index index.php index.

Nginx服务器作反向代理实现内部局域网的url转发配置_nginx

情景由于公司内网有多台服务器的http服务要映射到公司外网静态IP,如果用路由的端口映射来做,就只能一台内网服务器的80端口映射到外网80端口,其他服务器的80端口只能映射到外网的非80端口.非80端口的映射在访问的时候要域名加上端口,比较麻烦.并且公司入口路由最多只能做20个端口映射.肯定以后不够用. 然后k兄就提议可以在内网搭建个nginx反向代理服务器,将nginx反向代理服务器的80映射到外网IP的80,这样指向到公司外网IP的域名的HTTP请求就会发送到nginx反向代理服务器,利用n

Nginx服务器的反向代理proxy_pass配置方法讲解_nginx

就普通的反向代理来讲 Nginx的配置还是比较简单的,如: location ~ /* { proxy_pass http://127.0.0.1:8008; } 或者可以 location / { proxy_pass http://127.0.0.1:8008; } Apache2的反向代理的配置是: ProxyPass /ysz/ http://localhost:8080/ 然而,如果要配置一个相对复杂的反向代理 Nginx相对Apache2就要麻烦一些了 比如,将url中以/wap/开

nginx 根据域名反向代理配置

这是nginx本来就提供的功能. 应用场景 我只有一台vps 有多个域名 对外部要都用80提供服务 前置条件 用不同的端口,把不同的http服务都启动起来. 除了80要留给nginx,其他随便用 配置nginx sudo vim /etc/nginx/nginx.conf 加入或者修改为 server {     listen       80;     server_name  www.111cn.net;     location / {         proxy_pass   http: