tomcat部署项目如何去掉项目名称?急急急,在线等

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tomcat部署项目如何去掉项目名称?急急急,在线等相关的知识,希望对你有一定的参考价值。

一般情况下我们部署完后访问的路径为http://127.0.0.1:8080/test/index.jsp,发布到Internet后路径为http://a.com.cn:8080/test/index.jsp,省略掉端口和默认首页后就为http://a.com.cn/test/,其中test为项目名称,如何省掉项目名称,让路径变为http://a.com.cn/ 呢?在线等,解决问题再加分!
我的是MyEclipse7.0做的项目;直接在server.xml中<Host></Host>间加了一句<Context path="" docBase="/fts" debug="0" reloadable="true"/>,其中docBase="/fts"中的/fts是项目名字。问题已经解决。

server.xml文件修改。
最后几行
<Context path="/test" debug="0" reloadable="false" docBase="E:\workspace\test\Web"/>
</Host>
</Engine>
</Service>
</Server>

<Context path="/test" debug="0" reloadable="false" docBase="E:\workspace\test\Web"/>
修改
<Context path="/" debug="0" reloadable="false" docBase="E:\workspace\test\Web"/>
就是把path值设为当前根目录
试一下看看。追问

tomcat的server.xml文件中根本就沒有
這句啊

追答

那就加上这一句。你是Eclipse部署的吧。

参考技术A 直接把项目放到webapps的root目录下绝对行。 参考技术B 项目发布到Internet上后,a.com.cn是你申请的域名这个是必须有的。看一些项目部署相关信息,你就明白了。 参考技术C 不知道!
从没碰见过这样的问题!

估计要从网络方面下手!不是程序端能解决的。

ubuntu外置tomcat部署应用;访问项目时去掉项目名

首先需要一个正常能跑的应用打成war包

  1. 项目中加入spring-boot-starter-web(如果是已经加入该依赖的项目可以忽略)和spring-boot-starter-tomcat依赖。
  2. packaging由jar修改为war。
  3. 在build内加入finalName,这个是设置打war包名称,可以不设置使用默认的。

修改启动类,使其继承SpringBootServletInitializer类,重写configure方法,代码如下

package com.fchan.springcloudstream;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.support.SpringBootServletInitializer;

@SpringBootApplication
public class SpringcloudstreamApplication extends SpringBootServletInitializer {

    public static void main(String[] args) {
        SpringApplication.run(SpringcloudstreamApplication.class, args);
    }

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(SpringcloudstreamApplication.class);
    }


}

打成war包

下载安装tomcat

外网下载太慢了。找了个国内下载源地址
https://mirrors.cnnic.cn/apache/tomcat/

下载zip压缩包


解压到指定路径

unzip apache-tomcat-9.0.54.zip -d ~/app/tomcat/

到bin目录下启动和停止

./startup.sh
./shutdown.sh

部署项目

把项目的war包丢到webapps目录下,直接去bin下启动的话发现访问需要带上这个文件夹名字,也就是项目名


咨询了大佬
方案一

解压war包,在conf目录下的server.xml中的host部分添加context内容,然后Context标签docBase指向解压后的路径

解压war包

指向解压后的路径

<Context path="/" 
      docBase="/home/ubuntu/download/springCloudStream"  
        reloadable ="true" debug="0" privileged="true">
</Context>

测试不带项目名称请求成功

方案二
停止tomcat后,将原先webapps下的ROOT文件夹删除,然后将自己的war包改名成ROOT.war接着直接启动tomcat即可

方案三
类似方案一,修改conf路径下的server.xml,context标签的docBase指向自己的war包,把原先tomcat的webapps下的ROOT删掉,之后tomcat会自动解压指定路径的war包(一定要先删掉之前的ROOT文件夹再启动)
要注意的几点

  1. appBase为webapps,即我们解压后的文件会到这个目录下。
  2. Context标签中的path为空或者斜杠根路径
  3. Context标签中的docBase,注意下路径不要在webapps文件夹下,不然会重复启动,这里我的war包放在另一个目录下。
  4. 需要将webapps文件夹下原ROOT文件夹删除,因为我们这样做解压后的文件夹名为ROOT,如果原来已经有ROOT则不会发生解压操作。
<Context path="/" 
              docBase="/home/ubuntu/download/springcloudstream-0.0.1-SNAPSHOT.war"  
                reloadable ="true" debug="0" privileged="true">
              </Context>

以上是关于tomcat部署项目如何去掉项目名称?急急急,在线等的主要内容,如果未能解决你的问题,请参考以下文章

在tomcat下部署 在webapps下的war包 的项目能不能直接通过localhost:8080访问不加项目名,急!在线等

tomcat部署项目去掉项目名称,直接IP地址不带项目名称访问

tomcat配置去掉项目名称

ubuntu外置tomcat部署应用;访问项目时去掉项目名

求救!!..Winform 对 Excel的操作问题 ..!!!!!急急急!!!!

WPF 实现抽屉效果 在线等待 急急急!!!!