• JFinal 部署在 Tomcat 下推荐方法


    [转自] http://my.oschina.net/jfinal/blog/353062 ,  http://www.cnblogs.com/tc310/p/4709725.html


    经常有人在群里问 tomcat 下项目部署的问题,现写个简单的博文,希望能帮助到有需要的人。

       首先明确一下 JFinal 项目是标准的 java web 项目,其部署方式与普通 java web 项目没有任何差别。Java Web 项目在 Tomcat 下部署有一些不必要的坑需要避免,所以撰写此文方便大家绕过一些坑,以下部署以 linux 为例,windows 与此类似:

    1:创建一个目录:   /var/www

    2:为将要部署的项目创建一个目录, /var/www/my_project

    3:将项目打成 war 包, 然后解压到 /var/www/my_project

    4:最终的目录结构为:/var/www/my_project/WEB-INF,也即WEB-INF 在项目名称目录之下

    5:修改  TOMCAT_HOME/conf/ server.xml 文件找到 Host 标记,在其中添加如下子标记: 

        <Context path="" docBase="/var/www/my_project" reloadable="false" />

    6:启动 tomcat 打完收工

        第一个关键点:以上配置中项目是部署在了 TOMCAT_HOME/webapps 目录之外的,这样做是为了避免 tomcat 加载项目两次的坑,因为配置文件中如果配置了该项目会被加载一次,而项目在 webapps 下面又会被自动重复加载一次,这个坑会引发一些莫名奇妙的问题,例如:有些项目有定时任务,如果重复加载项目,那么定时任务也会被执行多次。所以记住第一点,永远不要将项目放在 TOMCAT_HOME/webapps 目录下面。

       第二个关键点:以上配置中的 Context 标记的 path 属性一定要设置为 "" 而不是 "/",否则也会跳入一个坑。 docBase 属性后面放项目名称的绝对地址, windows 下则是类似于这样的值: d:/www/my_project。

       简单说 tomcat 下配置分两步,一是在 webapps 目外之外建目录放项目,二是找 Host 标记放入 Context 子标记



    问题:请问一个tomcat下部署多个项目该怎么配置了?

    答案:将server.xml 中的 Host 标记复制多份,并列放着,改一下其中的 name 属性为相应的域名即可,例如将第一个的name属性改成 name="abc.com" 第二个改成 name="def.com",那么这两个域名可以分别访问到不同的两个项目


  • 相关阅读:
    自学传说中的php接口编写
    php数据类型
    php中的echo 与print 、var_dump 的区别
    vue 基础的一些字眼及路由
    初入 vue
    php 连接 数据库
    ExtJS获取父子、兄弟容器元素方法
    ext 的loadmask 与ajax的同步请求水火不容
    Ubuntu Server下配置UTF-8中文环境,ubuntu server zh_CN.UTF-8
    Proftpd快速搭建FTP服务器
  • 原文地址:https://www.cnblogs.com/pekkle/p/6568728.html
Copyright © 2020-2023  润新知