`

tomcat修改项目根目录

阅读更多

今天做nginx转发tomcat,遇到了这个问题:

nginx无法转发到tomcat,跟路径始终是ROOT郁闷啊,

 

你要是直接找解决方法的,方法是

修改appBase路径为绝对路径,不使用相对路径

 

<Host name="a"  appBase="/usr/apache-tomcat-7.0.50-wxser/webapps"
            unpackWARs="true" autoDeploy="true">
	<Context path="" docBase="wxserver" debug="true" reloadable="true" />
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="wxser_access_log." suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />

</Host>

 

按照上面的方式该就行了。为了迅速下面的东西可以略过

 

说下具体情况:

第一个遇到但是是502网关错误,这个和明显不是tomcat修改更路径的问题 ,后来发现是nginx配置文件里有个错误配置,换机器继续

 

第二个配置好nginx和tomcat的的根目录以及域名解析,访问通过,可以出现的是tomcat管理页面,这个很是头疼。为什么这么说,应为我是完全按照之前配置通过的步骤和方法配置的。

基本上处理IP,端口,项目名称,之外完全一样

噢 对了,tomcat小版本不一样,之前成功的是7.0.50 现在的是7.0.55,这到底是什么原因 ??

 

然后各种百度,google,最终几乎所有的链接都显示一个内容 

1.修改host里面的appBase,

2.然后在host结束标签之前添加context标签 

3.修改上面添加的context里面的docBase

 

对这个流程没错,我也是按照这个流程走的,这是为什么呢 ? 

 

我的配置 如下:

<Host name="a"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
	<Context path="" docBase="wxserver" debug="true" reloadable="true" />
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="wxser_access_log." suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />

</Host>

 

细心的话你可以看到我的appBase是相对路径,而想下面两个连接中的都是绝对路径 

http://yuhongchun.blog.51cto.com/1604432/544659

http://xinying.blog.51cto.com/441770/367863

 

在tomcat自带的文档里有这么一段说明 

 

Attribute Description
appBase

The Application Base directory for this virtual host. This is the pathname of a directory that may contain web applications to be deployed on this virtual host. You may specify an absolute pathname, or a pathname that is relative to the $CATALINA_BASE directory. See Automatic Application Deployment for more information on automatic recognition and deployment of web applications. If not specified, the default of webapps will be used.

 

你可以用绝对路径也可以用一个相对路径,相对于CATALINA_BASE的路径,

这么说其实我配置的webapps应该是对的,并且我之前也是这么配置的,但是为什么就不行呢 ,好纠结啊。

 

试了一下绝对路径,成功了,不知道原因,

 

我系统里面有多个tomcat,不知道是不是这个原因,

有高手知道的,指点一下

 

昨天更新了下项目,发现有有问题了,

最后把docBase也改成绝对路径才得以解决 

 

 

 

 

分享到:
评论

相关推荐

    将项目部署到Tomcat根目

    通过以上步骤,你应该成功地将Eclipse项目部署到了Tomcat的根目录,实现了简洁的URL访问。这不仅方便了用户,也提高了项目的可维护性和专业性。记住,良好的部署实践是任何Web应用成功的关键组成部分。

    tomcat 部署java项目 jar

    - `webapps`目录是Web应用的根目录,部署的应用会被放在其中。 - `temp`目录用于存放运行时产生的临时文件。 6. **源码与工具** - 标签中的“源码”可能指的是Java项目的源代码,开发者可以查看和修改这些代码来...

    tomcat 发布项目步骤

    3. **配置环境变量**:设置CATALINA_HOME环境变量指向Tomcat的根目录。 4. **启动Tomcat**:打开命令行工具,进入到Tomcat的bin目录下,运行`startup.bat`(Windows)或`startup.sh`(Linux/MacOS)来启动服务。 ##...

    tomcat读取本地文件

    这就引出了一个问题:如何让Tomcat服务器能够正确地读取这些位于非项目目录下的本地文件? #### 二、实现原理 要解决这个问题,可以通过修改Tomcat的配置文件`server.xml`来实现对非Web应用目录下文件的访问。具体...

    修改tomcat项目的图标

    本文将详细介绍如何修改Tomcat项目的图标,并提供两种方法:一种是在Tomcat根目录中直接替换图标,另一种是在项目中通过HTML链接引用自定义图标。 #### 二、基础知识 **1. favicon.ico** - **定义**:`favicon....

    TOMCAT下配置虚拟目录

    虚拟目录在Tomcat中的主要作用是允许管理员在单一的服务器上部署多个不同的Web应用,每个应用可以拥有独立的文档根目录。通过设置虚拟目录,可以避免不同应用间的资源冲突,同时简化了应用的管理和维护。 ### 二、...

    tomcat服务器上部署项目

    - **环境变量**:确保系统环境变量`JAVA_HOME`指向有效的JDK安装路径,`CATALINA_HOME`指向Tomcat的根目录。 - **端口号**:Tomcat默认使用8080端口,如果已有其他服务占用,需在`server.xml`中修改`Connector`标签...

    Jrebel 基于TOMCAT实现项目修改热部署

    (2) **配置 JRebel**: 在你的项目根目录下创建一个 `rebel.xml` 文件,这是 JRebel 配置的核心,用于指定需要热部署的资源路径。例如: ```xml ``` 请注意替换 `/path/to/your/project` 为...

    tomcat发布javaweb项目,以及tomcat的配置

    1. 修改`web.xml`文件:在项目的WEB-INF目录下找到web.xml,将`&lt;welcome-file-list&gt;`标签中的默认首页设置为根目录,例如`&lt;welcome-file&gt;index.jsp&lt;/welcome-file&gt;`。 2. 配置服务器:在Tomcat的conf/server.xml文件...

    Tomcat7部署多个Web项目的方法-有图有真相

    - `docBase`属性需要替换为你的Web项目根目录的实际路径。 - `reloadable`属性设置为`true`可以让Tomcat监控Web应用目录中的文件,如果发现有更改则自动重新加载。 - `debug`属性设置为`0`通常意味着关闭调试信息的...

    Apache和Tomcat整合配置实现网站目录搭建

    在实际项目开发中,为了利用Apache的高性能处理静态资源和Tomcat的强大Java支持,我们通常会将两者进行整合。本文将详细介绍如何进行Apache与Tomcat的整合配置,以实现网站目录的搭建。 首先,我们需要了解Apache和...

    项目部署到tomcat

    - `docBase`属性指定了项目的根目录为`E:\Item\project\WebRoot`。 - `debug`属性用于设置调试级别,默认为`0`。 - `privileged`属性决定了该上下文是否具有特殊权限,默认值为`true`。 3. **重启Tomcat服务器**...

    red5 与 tomcat项目集成

    - `@webapp.root.key@` 替换:这个占位符需要被替换为 `${webapp.root.key}`,这是一个 Spring EL 表达式,用于动态获取 Web 应用的根目录。 - `context-param`:根据需要调整 `contextConfigLocation` 的值,加入...

    一个tomcat配置多个端口运行不同项目

    这里的`appBase`属性指定了新的Web应用程序的根目录,可以是`webapps_second`,以便与默认的`webapps`目录分开。 4. 最后,为每个项目创建单独的`&lt;Context&gt;`: ```xml ``` `path`属性是访问项目时的URL路径,`...

    配置tomcat虚拟目录

    首先,需要明确应用的根目录位置,这里以`D:\Test`为例作为Web应用程序的实际存放位置。这意味着所有的静态资源(如HTML、CSS、JavaScript等)以及动态资源(如Servlets、JSP页面等)都将存储在这个目录下。 ##### ...

    Tomcat 部署项目的三种方法.docx

    - 设置`JAVA_HOME`环境变量,指向JDK的安装根目录。例如:`C:\Program Files\Java\jdk1.8.0_201` - 这一步非常重要,如果没有正确配置`JAVA_HOME`,启动Tomcat时可能会遇到问题。 3. **启动Tomcat服务器**: - ...

    TOMCAT配置虚拟目录

    【TOMCAT配置虚拟目录】知识...理解并掌握Tomcat的虚拟目录配置对于管理和部署多个Web应用至关重要,它提高了服务器资源的利用率,也便于管理不同项目。同时,合理配置虚拟目录可以避免应用间的冲突,提升系统灵活性。

    springboot项目部署到tomcat

    - 在Spring Boot项目的根目录下,依次执行以下Maven命令进行部署: ``` mvn clean mvn package -Dmaven.test.skip=true mvn tomcat7:redeploy ``` - 其中,`clean`用于清理项目;`package -Dmaven.test.skip=...

    Tomcat6.0虚拟目录配置

    除了直接修改`server.xml`外,Tomcat6.0还提供了另一种更为灵活的虚拟目录配置方式,即在`conf/catalina/localhost`目录下创建XML文件来定义`&lt;Context&gt;`。这种方法避免了直接修改主配置文件,使得虚拟目录的配置更加...

    Web项目-使用Tomcat部署Web项目实战.zip

    配置环境变量`CATALINA_HOME`指向Tomcat的根目录。 2. **配置Tomcat**:修改`conf/server.xml`文件,设置端口号(默认8080),以及其它服务器配置,如连接器、Context等。 3. **准备Web应用**:Web项目通常包含`...

Global site tag (gtag.js) - Google Analytics