本人初学者,有一个简单问题:
我在服务器上的如下地址有一个图片文件:
/test/en/20080212/test.jpg
服务器:10.1.12.10
我想生成一个超链接,显示这个图片,例如:<a href="http://10.1.12.10/test/en/20080212/test.jpg">Picture</a>
我在服务器上的如下地址有一个图片文件:
/test/en/20080212/test.jpg
服务器:10.1.12.10
我想生成一个超链接,显示这个图片,例如:<a href="http://10.1.12.10/test/en/20080212/test.jpg">Picture</a>
String url = "http://" + request.getServerName() + (request.getServerPort()==80?"":(":"+request.getServerPort()))+ request.getContextPath() +filename;其实就是组合一下
request.getServerName() = 127.0.0.1
request.getServerPort() = 80
request.getContextPath() = 你的虚拟目录,注意,有可能和你的/test重复了,因为我不清楚你的/test是否就是一个虚拟目录
<a href="test/en/20080212/test.jpg">Picture</a>
请注意,我去掉了最前面的/, 因为你最好用相对路径,否则一旦换服务器路径,图片就可能找不到了如果你是给其他人发邮件,让对方点击一个连接来访问你的页面,请用楼上的方法。
我的tomcat在服务器上的路径是/home/peter/tomcat
而所有的文件保存在/archive/repository/data/
而我的web程序是保存在/home/peter/tomcat/webapps/test
通常如果我有一个example.jsp在/home/peter/tomcat/webapps/test,那么在url地址栏中输入:http://localhost/test/example.jsp,就应该可以正常显示
如果我的图片文件moon.jpg存在于/home/peter/tomcat/webapps/test目录下面
那么http://localhost/test/moon.jpg应该可以正常显示
问题是现在的文件moon.jpg不在tomcat目录下面,是在/archive/repository/data/,
那么我该在tomcat里面做一些配置修改,才能用http://localhost/test/data/moon.jpg地址可以显示出来
可是我不知道应该修改哪个配置文件PS:如果你对我的问题还有不清楚的地方也可以发问,先在此感谢各位
你增加一个虚拟目录来解决吧!我们就叫images目录吧,用来代表你的图片文件tomcat/conf/setver.xml
第一行是以前默认存在的,第二行是新增的。 复制内容到剪贴板代码:
<Context path="" docBase="ROOT" debug="0" reloadable="true"></Context>
<Context path="/test/images" reloadable="true" docBase="/archive/repository/data"/> 然后在你的程序里,使用http://localhost/test/images
就可以访问了
原文来自这里 http://www.java2000.net/viewthread.jsp?tid=150
<Context path="" docBase="ROOT" debug="0" reloadable="true"></Context>
<Context path="/test/data" reloadable="true" docBase="/archive/repository/data"/> http://localhost/test/data/moon.jpg