• 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 命令使其生效

  • 相关阅读:
    Java打jar包详解
    用户体验评价
    本周总结(13)
    本周总结(12)
    第一阶段意见评论
    本周总结(11)
    冲刺计划第十天
    冲刺计划第九天
    冲刺计划第八天
    冲刺计划第七天
  • 原文地址:https://www.cnblogs.com/sherrykid/p/5808235.html
Copyright © 2020-2023  润新知