tomcat部署war包,jar包

tomcat部署war包,jar包在tomcat根目录下部署war包,通过http://ip:port的方式访问网上说的方法很多,这里记录一下自己的经过实践检验的一种方法。1、先去tomcat/conf/server.xml里有一个HOST标签,有个参数appBase,表示你的应用应该部署在什么位置。例如下面写的是webapps,那就在webapps/ROOT/路径下解压你的war包。如果appBase=XXX,那么就…

大家好,又见面了,我是你们的朋友全栈君。

在tomcat根目录下部署war包,通过http://ip:port的方式访问

网上说的方法很多,这里记录一下自己的经过实践检验的一种方法。
1、先去tomcat/conf/server.xml里
有一个HOST标签,有个参数appBase,表示你的应用应该部署在什么位置。例如下面写的是webapps,那就在webapps/ROOT/路径下解压你的war包。如果appBase=XXX,那么就在XXX/ROOT/路径下解压war包

<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">

2、运行tomcat/bin/startup.bat

如果要通过http://ip:port/appName的方式访问
1、在前面说到appBase的基础上,新建appBase/appName/路径,将war包解压到appBase/appName/
2、运行tomcat/bin/startup.bat

这里记一下虚拟路径的操作
HOST标签下新增如下代码
docBase是具体的文件目录,path是url中的地址,tomcat会做自动映射

<Context docBase="D:/docs" path="/resources" reloadable="true" debug="0"/>

2018-01-03更新
今天碰见一个问题,启动部署在root下的tomcat项目,访问项目中的一个url路径/manager/XXX一直显示404。但是这个url在其他人的tomcat上能够访问。
最后发现是在root路径同级有个自带的manager路径,访问到了那个manager路径下,那个manager路径下没有我请求的url,所以404了。
把那个manager改了个名字就能正常访问了

2018-03-07更新
今天碰见个问题,前端请求的参数带有中文,但是到了服务器端,日志打印出来的又都是乱码。
应用的web.xml中也配置filter

<filter>
    <filter-name>characterEncodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
        <param-name>encoding</param-name>
        <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
        <param-name>forceEncoding</param-name>
        <param-value>true</param-value>
    </init-param>
</filter>

    <filter-mapping>
        <filter-name>characterEncodingFilter</filter-name>
        <url-pattern>/*</url-pattern> </filter-mapping>

然后在tomcat的conf/server.xml配置文件中改了东西,增加了useBodyEncodingForURI=”true”

<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" useBodyEncodingForURI="true" />

20180504更新
部署jar包应用,可以写一个shell脚本

nohup /opt/jdk1.7.0_76/bin/java -jar -Xms1024m -Xmx1024m -Dspring.profiles.active=test -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=10086 /XXX/test.jar > /XXXX/nohup.out 2>&1 &

启动参数说明:XXX是路径,10086是远程debug的端口,Xms,Xmx堆大小

20180529更新
在一片白纸的linux上安装tomcat,然后telnet了一下,telnet localhost 8080,没有返回Connection refused,而是返回了No route to host。
查了下资料,Connection refused一般来说是端口没有监听,No route to host是防火墙没有打开特定端口。说明链接:https://blog.csdn.net/bisal/article/details/44731431
如果想开放端口,例如8080
1) vi /etc/sysconfig/iptables 进入编辑增添一条-A INPUT -p tcp -m tcp –dport 8080 -j ACCEPT 即可
2)iptables -I INPUT -p tcp –dport 8080 -j ACCEPT

然后

service iptables save
systemctl restart iptables

但是有可能出现Failed to start iptables.service: Unit iptables.service failed to load: No such file or directory.
具体可以参考:https://blog.csdn.net/c233728461/article/details/52679558。我用的是文章中第二种传统管理方式
一顿操作猛如虎,再telnet,应该就差不多了,因为应用没有部署,没有监听8080。

telnet localhost 8080
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
Trying ::1...
telnet: connect to address ::1: No route to host
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/135609.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • fileinputstream java_Java FileInputStream close()方法

    fileinputstream java_Java FileInputStream close()方法JavaFileInputStreamclose()方法java.io.FilterInputStream.close()用于关闭流。1语法publicvoidclose()2参数无3返回值无4示例packagecom.yiidian;/***一点教程网:http://www.yiidian.com*//***java.io.FilterInputStream.close…

    2022年5月16日
    47
  • VS2010编写动态链接库DLL和单元测试,转让DLL测试的正确性

    VS2010编写动态链接库DLL和单元测试,转让DLL测试的正确性

    2022年1月4日
    52
  • 纯HTML CSS制作导航栏 下拉菜单

    纯HTML CSS制作导航栏 下拉菜单纯HTMLCSS制作导航栏下拉菜单

    2022年5月28日
    38
  • HTML转word_讯飞语记怎么变成word文档

    HTML转word_讯飞语记怎么变成word文档HTML转word背景介绍1.使用POI进行转化1.1思路1.2代码示例1.3思考2.使用jacob进行转化2.1思路2.2代码示例2.3思考3.总结背景介绍业务:将平台中尽调笔记(富文本)以word形式导出。1.使用POI进行转化依赖jarpoi-3.17.jarpoi-excelant-3.17.jarpoi-ooxml-3.17.jarpoi-ooxml-…

    2022年10月12日
    2
  • java.lang.AbstractMethodError异常

    java.lang.AbstractMethodError异常前言:今天APP在客户华为Android10版本手机上闪退,报如下异常,10以下版本无任何问题,异常信息也没有自己APP报错的堆栈信息,无法直接定位到是那行代码导致的问题,苦逼了半天,梳理思路,终于解决了。分析:由于APP没有做Q版本适配,难道不兼容吗?于是安装Q版模拟器进行复现问题,直接运行安装发现没有闪退,难道是只有在华为手机上才出现问题吗?为了验证这个观点,就用客户相同的安装包进行…

    2022年6月2日
    35
  • C语言中volatile关键字的作用

    C语言中volatile关键字的作用一.前言1.编译器优化介绍:由于内存访问速度远不及CPU处理速度,为提高机器整体性能,在硬件上引入硬件高速缓存Cache,加速对内存的访问。另外在现代CPU中指令的执行并不一定严格按照顺序执行,没有相关性的指令可以乱序执行,以充分利用CPU的指令流水线,提高执行速度。以上是硬件级别的优化。再看软件一级的优化:一种是在编写代码时由程序员优化,另一种是由编译器进行优化。编译器优化常用的方法有:将内存变

    2022年6月1日
    34

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号