Nginx与Tomcat集成

Nginx用来处理静态页面的请求,JSP交给Tomcat处理


  • 安装JDK

安装后,配置好JAVA_HOME和PATH

Mac查看JAVA_HOME路径的方法:/usr/libexec/java_home

  • 安装Tomcat

将安装包解压后,将目录配置为  CATALINA_HOME 环境变量,同时将bin目录添加到path中

一般我还会设置一下 tomcat-user.xml

<?xml version='1.0' encoding='utf-8'?>

<tomcat-users xmlns="http://tomcat.apache.org/xml"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd"
              version="1.0">

  <role rolename="tomcat"/>
  <role rolename="role1"/>

  <role rolename="manager-gui"/>
  <role rolename="admin-gui"/>
  
  <user username="admin" password="123456" roles="admin-gui,manager-gui,tomcat,role1"/>

</tomcat-users>
<Host name="localhost"  appBase="/Users/sherry/WorkPath/tomcat/webApps"
            unpackWARs="true" autoDeploy="true">

项目路径配置在server.xml中

当Nginx与Tomcat都安装好后,Ngnix监听80端口,Tomcat监听8080端口,用户请求先给80端口,Ngnix判断请求情况,决定是自己处理还是交给Tomcat处理

在Ngnix的conf目录下,建一个配置文件,如:tomcat.conf,配置如下:

user nobody;
 worker_processes 4;
 
 events {
       worker_connections  1024;
 }
 
 http{
     server{
         listen 127.0.0.1:80;
         server_name 127.0.0.1;
         access_log logs/server1,access.log combined;
         location ~.(jsp|jspx|do)?$
         {
             root /Users/sherry/WorkPath/tomcat/webApps;
             index index.jsp index.jspx index.html;
             proxy_set_header X-Forwared-Host $host;
             proxy_set_header X-Forwared-Server $host;
             proxy_set_header X-Forwared-For $proxy_add_x_forwarded_for;
             proxy_pass http://localhost:8080;
         }
     }
 }

启动Nginx nginx -c tomcat.conf  注意:这里就一定要指定配置文件进行启动了

然后就可以像是在访问Ngnix服务器一样访问tomcat上部署的工程了

这也就是Ngnix的反向代理

个人思考:原先部署在Tomcat上的程序,在jsp页面上,难免会去引入一些静态资源,如css、js、图片等,而现在肯定是要将这些静态资源放在Ngnix服务器上了

所以在实际部署的时候,静态资源文件和用到这些静态资源的jsp页面会不在同一个服务器上,这点要自己清楚。

Mac下配置环境变量的地方

/etc/paths

~/.bash_profile

Linux下配置环境变量的地方

/etc/profile

~/.bashrc

关于在哪里配置环境变量,只有知道环境变量有全局与当前用户之分即可,配置完后,注意 source 命令使其生效

原文地址:https://www.cnblogs.com/sherrykid/p/5808235.html