url重写导致的css路径错误,图片路径错误解决
分析路径错误原因:
截图如下
项目正确的url应该是......./jsp/postBlog.action
因为我urlrewrite.xml中 postType 的 rule为
<from>^/jsp/postType/(.*)/(.*)\b$</from>
所以点击跳转后,postType位置多加了两级目录 "/postType" 后的 " /1" 后,
所以,css路径引用( href=" .....")只要加 . . / . . /
问题就可以解决,所以,问题知道了,改就好改了。
以我项目为例
加代码如
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
<head>
<base href="<%=basePath %>/jsp/post_type.jsp"/>
</head>
这样,就把路径指定到页面了,这样的话,页面里面原先所有的路径都是基于这个路径来进行的,不用改任何资源引用的路径。
如果要部署到linux下,这样是不行的,这样,资源引用会出错,(windows下正常),会出现如下错误
一些链接的ip直接指向127.0.0.1,经测试,是由于<base href="<%=basePath %>/jsp/post_type.jsp"/> 这句配置造成的
所以要想把项目部署到linux下,需要把linux服务器对应 ip (或者域名) 写到<%=basePath %>处
如 <base href="http://iustudio.cc/jsp/post_type.jsp"/>
这样,就正确指定路径级别到具体页面,而使得页面各种资源路径引用合法
本工作室网站正在各种更新中,欢迎来访具体效果