tomcat软连接的使用
软连接说白了就是一个映射。可以映射文件,也可以映射目录。linux和windows都可以做软连接,加入现在把文件A.txt做软连接到B.txt:
linux命令如下:
ln -s A.txt B.txt
windows命令如下:
mklink B.txt A.txt
建立软连接的目的是隔离tomcat里目录或文件,主要是隔离webapps里的项目或者静态资源文件,以实现部署和维护的方便。在tomcat里context.xml文件里设置allowLinking="true"就可以打开软连接,根据tomcat版本不同有不同的设置:
tomcat567版本:
<Context allowLinking="true" />
tomcat89版本:
<Context>
<Resources allowLinking="true" />
</Context>
根据context.xml文件的不同位置又有3种设置方法:在conf目录下修改context.xml,所有在webapps里的项目都支持软连接;在webapps下项目自己的META-INF里修改context.xml,只有该项目自己支持软连接;在conf\Catalina\主机名下修改项目名.xml,同样只有该项目自己支持软连接。
针对上面第一种设置方法举个例子,我在Eclipse配置了一个tomcat9的Server,里面的项目叫Struts2,我要对静态资源文件index.jsp做软连接到F盘:

我第一步就是修改eclipse里面的context.xml,直接在eclipse打开加入<Resources allowLinking="true" />这一行即可:

然后我要去workspace里Struts2项目里把index.jsp文件移动到F盘根目录并改名了hello.jsp,在cmd命令行里执行:
mklink index.jsp F:\hello.jsp



最后在eclipse启动tomcat,我们本来是访问index.jsp的,现在其实是去F盘访问了hello.jsp:

再针对上面第三种设置方法举个例子,现在我想把安装在D盘的tomcat8自带的examples项目软连接到F盘的test目录中:
1、复制D:\wulinfeng\tomcat\apache-tomcat-8.5.13\webapps\examples到F盘根目录,改名为test,删除D盘examples目录:

2、在D:\wulinfeng\tomcat\apache-tomcat-8.5.13\webapps下建立到F:\test的软连接examples:
D:\wulinfeng\tomcat\apache-tomcat-8.5.13\webapps>mklink examples F:\test
为 examples <<===>> F:\test 创建的符号链接

3、在D:\wulinfeng\tomcat\apache-tomcat-8.5.13\conf\Catalina\localhost下新建examples.xml,examples.xml内容为:
<?xml version="1.0" encoding="UTF-8"?>
<Context>
<Resources allowLinking="true" />
</Context>
4、在D:\wulinfeng\tomcat\apache-tomcat-8.5.13\bin下执行startup.bat,启动tomcat
D:\wulinfeng\tomcat\apache-tomcat-8.5.13\bin>.\startup.bat
Using CATALINA_BASE: "D:\wulinfeng\tomcat\apache-tomcat-8.5.13"
Using CATALINA_HOME: "D:\wulinfeng\tomcat\apache-tomcat-8.5.13"
Using CATALINA_TMPDIR: "D:\wulinfeng\tomcat\apache-tomcat-8.5.13\temp"
Using JRE_HOME: "D:\Program Files\Java\jdk1.8.0_101"
Using CLASSPATH: "D:\wulinfeng\tomcat\apache-tomcat-8.5.13\bin\bootstrap.j
ar;D:\wulinfeng\tomcat\apache-tomcat-8.5.13\bin\tomcat-juli.jar"
5、在浏览器请求localhost:8080/examples

tomcat软连接的使用的更多相关文章
- Centos7.3_x86_64通过systemctl控制tomcat8.0.46启动和停止
Centos7.3_x86_64通过systemctl控制tomcat8..46启动和停止 之前在centos 6上通过脚本控制tomcat 启动和停止的脚本,虽然在centos 7也可以使用,但ce ...
- memcache+tomcat7.0.37+nginx实现session共享
一.session工作原理 由于http是无状态的协议,当我们访问了页面A,然后访问页面B,http无法确定这2个页面的访问是来自同一个人.因此,我们要用cookie或session来跟踪用户,根据授 ...
- tomcat 访问软连接
Linux创建软连接: ln -s 源文件 目标文件 tomcat安装目录 / conf目录下的:context.xml文件在 <Context />; 里面加上 allowLinking ...
- 【转】tomcat 访问软连接文件夹下的网页出现404错误,description The requested resource (/xxx.html) is not available.
在 tomcat/webapps/ROOT/ 下建立一个软连接文件ln -s /home/ubuntu/report report 再到report软连接目录里建立个 report.html通过浏 ...
- 设置tomcat支持软连接
一般开发时不会在tomcat安装目录/data/tomcat/webapps/ROOT 下去,上传部署:而是建立软连接,在tomcat安装目录之外操作,比如执行git pull拉取项目,而tomcat ...
- nginx+tomcat实现集群,redis实现session共享,软连接实现文件共享:http://blog.csdn.net/hua1586981/article/details/78132710
转载 2017年02月08日 16:52:41 730 相信很多人都听过nginx,这个小巧的东西慢慢地在吞食apache和IIS的份额.那究竟它有什么作用呢?可能很多人未必了解. 说到反向代理,可能 ...
- Tomcat不能访问ln -s软连接文件夹的前因后果
为了部署方便,把webapps下的大文件(图片等资源)放到工程外,通过软连接的方式设置 命令最常用的参数是-s,具体用法是:ln -s 源文件 目标文件. ln -s /usr/local/pic/i ...
- centos搭建https协议的tomcat和apache服务器以及nginx服务器,mysql php
Apache HTTP Server(简称 Apache)是 Apache 软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的 Web ...
- Tomcat编码问题及访问软链接文件设置
Tomcat编码问题及访问软链接文件设置 一.编码问题:让其支持UTF-8格式 修改tomcat中server.xml Connector port=" protocol="org ...
随机推荐
- leetCode题解之Reshape the Matrix
1.题目描述 2.分析 使用了一个队列. 3.代码 vector<vector<int>> matrixReshape(vector<vector<int>& ...
- ORACLE数据库AWR工具学习
AWR(Automatic Workload Repository)即工作负载信息库,主要用于收集数据库运行状态的资料库,通过AWR报告可以分析ORACLE数据库的性能,从而给出优化策略. 图一:此图 ...
- 从AggregateException看异常类的设计
异常是程序在有bug时最直观的表现形式,不担心有bug存在,而担心bug埋没在大堆的代码中而发现不了. 这篇随笔简单谈谈从AggregateException类源码(http://www.projky ...
- mysql数据库的常用命令总结及具体操作步骤
从头复习一下数据库的语法 use database; --- 使用数据库 show databases/tables --- 查看所有的数据库/表 desc table; --- 查看表的结构 cr ...
- 便利的操作plist文件
便利的操作plist文件 升级iOS9了,网络被强制切换成https了,你需要更新你的plist的文件才能够支持http,正常的做法是这样子的: 过程是不是挺繁琐的呢?如果你新建的另外一个工程,里面还 ...
- 超级好用的解析JSON数据的网站
超级好用的解析JSON数据的网站 网址 http://json.parser.online.fr/beta/ 效果图 测试数据 {,},,,,,,},{,,,,},{,,,,},{,,,,,,,,,, ...
- qmake
https://blog.csdn.net/m0_37876745/article/details/78537556
- 浅谈jodaTime 的使用
第一步:引入依赖: 1 <dependency> 2 <groupId>joda-time</groupId> 3 <artifactId>joda-t ...
- JqGrid中文文档之TreeGrid
几年之前写过一个非常简单的jqgrid属性说明. 今天又用到jqgrid这个控件了,捣鼓了许久,第一个treegrid完成了 jQuery("#list1").jqGrid({ u ...
- 走向Node与Webpack 之路 - CommonJS 模块化
走向Node与Webpack 之路 - CommonJS 模块化 1. 参考资料 JavaScript 标准参考教程(alpha) CommonJS规范(推荐 - 阮一峰写的) 官方网站 (看半天,不 ...