Nginx+Tomcat 动静分离

在这里插入图片描述

1. Nginx+Tomcat 环境

  • Nginx 处理静态资源的优势同样可以应用在 Tomcat 环境中 。从实现方法上来说,Nginx+Tomcat 环境的搭建思路与前面完成的 Nginx+Apache 环境是完全相同的,只需要将 Nginx 与 Tomcat 的站点文档目录配置到同一目录下,利用 Nginx 的 proxy_pass 指令代理请求动态文件即可。

1.1 Tomcat 的安装与使用

1. 获取 Tomcat 和 JDK

  • 由于 Tomcat 主要用于运行 JavaWeb 项目,所以需要在系统中安装 JRE(Java Runtime Environment ,Java 运行环境)。如果需要直接在服务器中开发 JavaWeb 项目,则需要安装 JDK(Java Development Kit,Java 开发工具包)
  • 关于JDK和Tomcat的安装,可以访问我以前的博客作为参考。
  • Centos7.3云服务器上安装Nginx、MySQL、JDK、Tomcat环境

2. 查看 Tomcat 目录结构

  • 切换到 Tomcat 目录中查看目录结构,具体结果如下。

在这里插入图片描述

在这里插入图片描述

  • 启动、关闭Tomcat命令都要在bin目录下执行
./startup.sh
./shutdown.sh
  • 打开防火墙的端口号和服务器上的安全组规则,把主要的端口号放开

Nginx +Tomcat 动静分离

  • Java Web 项目中的动态资源使用 jspdo 扩展名,并且在站点文档目录中通过 WEBINFMETA-INF 目录保存一些配置信息。下面以 Tomcat 的默认站点为例,实现 Nginx +Tomcat 的动静分离 。在 Nginx 中创建虚拟主机 tomcat. ng. test,具体配置如下。
1	server {
2		listen 80;
3		server_name tomcat.ng.test;
4		root /usr/1ocal/tomcat8.5/webapps/ROOT;
5		index index.html index.htm index.jsp index.do;
6		location ~/(WEB- INE|META-INF){
7			deny all;
8		}
9		location ~\.(jsp|do)$ {
10			proxy_pass http:/1127.0.0.1:8080;
11			proxy_set_header X-Client-IP $ remote addr;
12		}
13		location~^/(docs|examples)(/.*)* $ {
14		root /usr/local/tomcat8.5/webapps;
15		}
16 }
  • 在上述配置中,第 4 行设置站点文档目录为 webapps 目录下的 ROOT 目录,该目录是站点的根目录;第 5 行在默认页面配置中增加了 jspdo 扩展名;第 6 行用于阻止访问配 置目录;第 9 行将带有 jspdo 扩展名的请求代理到 8080 端口的 Tomcat 服务器中;第 14 行配置了站点下 docs、examples 两个目录的实际存放路径。
  • 接下来在物理机的 hosts 文件中将域名 tomcat. ng. test 解析到 192. 168. 78. 3 ,然后使用浏览器访问进行测试,运行结果如图 5-28 所示。
    在这里插入图片描述
上一篇:美国大学生数学建模竞赛(MCM/ICM)介绍


下一篇:Android 原生开发与Harmony原生开发浅析