问题

最近用 Tomcat 搭建了个 Jenkins ,但是访问的时候需要端口加 /jenkins/ 才能进行访问。我们是直接将 Jenkins.war 包放在 webapps下的。 我们想直接通过不加路径进行访问。

解决办法

思路一

Host 里面进行配置 path ,经过测试,发现是不行的。


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

思路二(可用)

新建一个 jenkins 目录在 ./webapps/./webapps/jenkins . 然后将 jenkins.war 解压,然后将压缩包里所有内容放在 ./webapps/jenkins/ 下, 然后在 ./conf/server.xmlHost

增加一个 Context 配置. 假设路径为 /opt/apache-tomcat-8.5.47/webapps/jenkins,那么配置为

<Host name="localhost"  appBase="webapps" path="/"
unpackWARs="true" autoDeploy="true">
<!-- 新增-->
<Context docBase="/opt/apache-tomcat-8.5.47/webapps/jenkins" path="/" reloadable="true"/>
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
--> <!-- Access log processes all example.
Documentation at: /docs/config/valve.html
Note: The pattern used is equivalent to using pattern="common" -->
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t &quot;%r&quot; %s %b" /> </Host>

然后启动 Jenkins 即可。

思路三(可用)

将 jenkins.war 解压,然后将压缩包里所有内容放在 ./webapps/ROOT/ 下,然后启动 jenkins.

[root@localhost webapps]# pwd
/opt/apache-tomcat-8.5.47/webapps
[root@localhost webapps]# ls -l ./ROOT/
total 2428
drwxr-x--- 3 root root 36 Nov 10 18:22 bootstrap
-rw-r----- 1 root root 1946 Feb 7 2019 ColorFormatter.class
drwxr-x--- 5 root root 265 Nov 10 18:22 css
-rw-r----- 1 root root 1544 Oct 28 13:22 dc-license.txt
drwxr-x--- 2 root root 30 Nov 10 18:22 executable
-rw-r----- 1 root root 17542 Oct 28 13:22 favicon.ico
drwxr-x--- 12 root root 180 Nov 10 18:22 help
drwxr-x--- 6 root root 4096 Nov 10 18:22 images
-rw-r----- 1 root root 1674 Feb 7 2019 JNLPMain.class
drwxr-x--- 2 root root 250 Nov 10 18:22 jsbundles
-rw-r----- 1 root root 862 Feb 7 2019 LogFileOutputStream$1.class
-rw-r----- 1 root root 636 Feb 7 2019 LogFileOutputStream$2.class
-rw-r----- 1 root root 2240 Feb 7 2019 LogFileOutputStream.class
-rw-r----- 1 root root 20730 Feb 7 2019 Main.class
-rw-r----- 1 root root 1048 Feb 7 2019 MainDialog$1$1.class
-rw-r----- 1 root root 1067 Feb 7 2019 MainDialog$1.class
-rw-r----- 1 root root 2633 Feb 7 2019 MainDialog.class
-rw-r----- 1 root root 512 Feb 7 2019 Main$FileAndDescription.class
drwxr-x--- 3 root root 94 Nov 10 18:22 META-INF
-rw-r----- 1 root root 71 Oct 28 13:22 robots.txt
drwxr-x--- 3 root root 218 Nov 10 18:22 scripts
drwxr-x--- 7 root root 275 Nov 10 18:22 WEB-INF
-rw-r----- 1 root root 2390099 May 12 15:50 winstone.jar

反思

  1. 经过这个测试,我发现了一个点,当我们 在 Root 目录有内容的时候,我们没有配置 Context 的时候,我们是取 Root 里面的内容的,当我们配置了的 Context 的内容的时候,访问 ip:端口(默认访问),就是我们 Context 里面 docBase 配置的路径。
  2. webapps 下的默认访问是 ROOT,其他在 webapps下的 目录都是需要加路径的(也就是目录名),当我们指定了也就是 Context 里面 docBase 配置的路径,这个时候才不需要加路径。

Jenkins 在 Tomcat 运行访问路径设置的更多相关文章

  1. tomcat的根路径设置

    今天使用postman进行springmvc的测试发现提示404错误,检查原因发现是tomcat的配置问题.这里的发布的war包的访问地址 Application Context设置为了根路径”/” ...

  2. Tomcat容器虚拟路径设置

    1.[官方文档]在tomcat\conf下server.xml中找到 <Host name="localhost" appBase="webapps" u ...

  3. Linux下Tomcat项目访问路径修改

    1.去除端口号8080. 首先,进入tomcat的安装目录下的conf目录,我的目录是 /usr/local/apache-tomcat-9.0.20/conf,编辑文件server.xml. 将se ...

  4. Jenkins访问路径配置自定义的相对路径

    Jenkins安装时没有配置自定义的相对访问路径,例如配置的端口是29957,那访问路径就是http://localhost:29957.以下介绍把访问路径改成http://localhost:299 ...

  5. Jenkins+maven+Tomcat+SVN一键自动打包部署应用到服务器

    今天请教了大神,终于把jenkins给搞明白了 现在做下笔记,防止自己老年痴呆又忘了怎么配置 (截图可能不够清晰,有不清楚的随时评论打call) 机器配置: 安装配置规划 机器 192.168.169 ...

  6. idea修改web项目的访问路径

    转 新建好了项目发现项目只能以localhost:8080这样的访问路径访问到主页,也就是index.jsp 那么之前我用eclipse新建的项目都是localhost:8080/xxx(项目名称)来 ...

  7. eclipse配置apache tomcat运行时访问路径不需要项目名称

    问题:tomcat运行项目默认是要带上项目名的,有时候不想要项目名来访问,如何解决呢? 方法: 1:双击打开tomcat 2:选择Modules,选择你要修改的项目 3:点击Edit,把path修改成 ...

  8. centos7一步一步搭建docker jenkins 及自定义访问路径重点讲解

    系统环境:centos7.7 (VMware中) 镜像image 版本:jenkins/jenkins (截止2020.01.10最新版) 参考文章:https://www.jianshu.com/p ...

  9. tomcat 访问权限设置

    1.全局设置,设置允许某些IP能够访问到tomcat服务器,或不能访问tomcat服务器 只需要编辑tomcat的server.xml,增加适当代码即可. 修改如下:在<Host>  &l ...

随机推荐

  1. FTP安装及配置

    在centos7安装ftp服务 yum install -y vsftpd 启动服务 systemctl start vsftpd 自启动 systemctl enable vsftpd 查看端口 注 ...

  2. 学java可以做些什么

    学java可以做些什么 对于很多新手来说,刚开始接触Java会很迷惘,不知道Java可以做什么.其实Java 可以做的东西太多了,手机游戏.中间件.软件.网站,电脑游戏,以及现在流行的安卓手机app等 ...

  3. Python Django 支付宝 扫码支付

    安装python-alipay-sdk pip install python-alipay-sdk --upgradepip install crypto 如果是python 2.7安装0.6.4这个 ...

  4. SpringBoot整合MyBatis-Plus3.1详细教程

    作者:Sans_ juejin.im/post/5cfa6e465188254ee433bc69 一.说明 Mybatis-Plus是一个Mybatis框架的增强插件,根据官方描述,MP只做增强不做改 ...

  5. Add an Item to the New Action 在新建按钮中增加一个条目

    In this lesson, you will learn how to add an item to the New Action (NewObjectViewController.NewObje ...

  6. 图像几何变换之平移(Matlab)

    G=imread('aini555.jpg'); A=rgb2gray(G); se=translate(strel(),[,]); B=imdilate(A,se); figure; subplot ...

  7. Python的range、enumerate和zip函数用法

    range函数可创建一个整数列表.如果需要知道当前元素在列表中的索引,推荐用enumerate代替range.zip函数用于同时遍历多个迭代器. 一.range 函数 range函数可创建一个整数列表 ...

  8. 【Java基础】Java中的反射机制

    一.反射的理解 (1)正射 在理解反射这个概念之前,我们先来理解Java中的“正射”. 我们在编写代码时,当需要使用到某一个类的时候,必定先会去了解这是一个什么类,是用来做什么的,有怎么样的功能. 之 ...

  9. [Go] go连接influxdb的库

    开启了influxdb后,会监听8086端口下载客户端代码git clone https://github.com/influxdata/influxdb1-client.git $GOPATH/sr ...

  10. CSRF说明

    CSRF: 跨站请求伪造 与XSS区别: XSS:利用用户对站点的信任 CSRF:利用站点对已经经过身份认证客户端的信任 CSRF原理(在用户非自愿.不知情的情况下提交请求): 当client已经与s ...