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 ...
随机推荐
- js滚轮事件
首先,不同的浏览器有不同的滚轮事件.主要是有两种,onmousewheel(firefox不支持)和DOMMouseScroll(只有firefox支持).w3c文档已经废弃了onmousewheel ...
- Python入门-模块4(序列化----json模块和pickle模块)
序列化是指把内存里的数据类型转变成字符串,以使其能存储到硬盘或通过网络传输到远程,因为硬盘或网络传输时只能接受bytes.反之,把硬盘里面的数据读到内存里,叫反序列化.
- SparkSql实现Mysql到hive的数据流动
今天去面试了一波,因为调度系统采用了SparkSql实现数据从Mysql到hive,在这一点上面试官很明显很不满我对于Spark的理解,19年的第一个面试就这么挂了. 有问题不怕,怕的是知道了问题还得 ...
- 铁乐学python_day10_作业
1.继续整理函数相关知识点,写博客. 2.写函数,接收n个数字,求这些参数数字的和.(动态传参) def sum_n(*args): sum = 0 for i in args: sum += i r ...
- ZT 80-90年代港台300部电视剧 你看过多少?
80-90年代港台300部电视剧 你看过多少? [复制链接] 噗噗 738主题 18精华 万家金领 发消息 发表于 2010-4-27 09:01:02 |显示全部楼层 1.(珍珠传奇) ...
- session过期,拦截ajax请求并跳转登录页面
1.方法一 :1.1使用filter 和ajaxsetup 对ajax进行拦截并跳转登录页面 public void doFilter(ServletRequest request, ServletR ...
- #001 CSS快速入门讲解
CSS入门讲解 HTML人+CSS衣服+JS动作=>DHTML CSS: 层叠样式表 CSS2.0 和 CSS3.0 版本,目前学习CSS2, CSS3只是多了一些样式出来而已 CSS 干啥用的 ...
- #001 Emmet的API图片
这个是一张Emmet的快捷键图片,里面包含了所有的快捷键. 虽然有很多的快捷键,但是常用的也就那么几个 . 样式 # ID > 上下级节点 + .col-md-8+.col-md- ...
- Istio 1.1尝鲜记
近几天Istio1.1的发布引起了技术界巨大的反响,为了让更多技术爱好者能够亲自体验Istio1.1,公司的技术大佬赶出了这篇尝鲜教程,其中包括环境.安装.可能遇到的问题及解决方式等,希望对大家有所帮 ...
- python邮件处理
SMTP SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式.Python对SMTP支持有 ...