一、文件物理路径
文件存放的真实路径,tomcat会映射到此路径下。
二、修改server.xml
利用虚拟目录,将tomcat和上传的文件分离。利用tomcat配置将某个url请求映射到物理路径下,完成文件回显。这样文件可以存放在本地,或者远程服务器上,而非tomcat上面。tomcat只起到映射文件路径
作用,不做存储。
进入tomcat下的conf目录,找到server.xml文件,在Host标签下加入如下Context标签
path:表示对外映射的路径,
docBase:物理磁盘路径,可以是绝对路径,也可以是相对路径,甚至是共享磁盘目录
debug:参数不用管
reloadable:表示是否重新加载
需要注意的是,path值不允许重复,否则会导致tomcat启动不起来
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="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 "%r" %s %b" />
<Context docBase="/root/oneblog/data/img" path="/img" reloadable="true"></Context>
<Context docBase="/root/oneblog/data/file/oneblog" path="/oneblog" reloadable="true"></Context>
</Host>
三、查看文件列表
修改 conf --> web.xml 中的listings值为true可以访问文件列表
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value>
</init-param>