在做B/S的应用时,经常会遇到一个问题,网站上传的一些图片不是保存在应用服务器下面,而是保存在别的目录,但是页面中又需要能访问到这些图片。这时,应用服务器的“虚拟目录”就派上了用场。
【转载使用,请注明出处:http://blog.csdn.net/mahoking】
本文[以apache-tomcat-5.5为例]打开tomcat的配置文件,路径是:apache-tomcat-5.5/conf/server.xml。找到HOST标签,在<HOST></HOST>中间加上Context标签,例如:
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <Context path="/ImageSite" docBase="F:\site\image" reloadable="true" debug="0"> </Context> </Host>
注:
path:虚拟目录名称
docBase:实际文件存放地址
扩展:同理,jboss服务器配置方式一样,配置文件路径是:jboss-4.0.5.GA/server/你的应用名/deploy/jbossweb-tomcat55.sar/server.xml。【因jboss版本不同而异】
1、 在本机F盘新建F:\site\image文件夹路径,放置图片image.jpg如下:
2、 新建一个Java Web项目ImageTest,在index.jsp页面,粘贴如下代码:
<%@ page language="java" import="java.util.*" pageEncoding="gbk"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href="<%=basePath%>"> <title>演示Demo(代码) </title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> </head> <body> <img src="/ImageSite/image.jpg"></img> </body> </html>3、通过IE(其他浏览器)访问index.jsp页面。
【转载使用,请注明出处:http://blog.csdn.net/mahoking】
原文地址:http://blog.csdn.net/mahoking/article/details/39783489