tomcat软连接的使用

Posted 不想下火车的人

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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软连接的使用的主要内容,如果未能解决你的问题,请参考以下文章

设置tomcat支持软连接

Tomcat软连接配置(symlinks)

tomcat支持软连接

tomcat支持软连接

Tomcat灰度发布shell脚本(来自网络可以参考)

Tomcat不能访问ln -s软连接文件夹的前因后果