zoukankan      html  css  js  c++  java
  • urlrewrite地址重写之后丢失css和js解决方案

       最近在搞一个商业网站项目,与之前项目的最大不同就是这个项目采用UrlRewrite地址重写,对于商业网站来说,它自有其有利的一面,但对于编程人员带来了最大的麻烦就是一些相对地址失效了。因为那些地址经过UrlRewrite之后都是虚的,对于代码中出现../../filename.js这样相对路径,按照正常的目录查找可能根本找不到对应的css和js文件。对应这个问题,很多博客都说只能用绝对路径写死,但是这个对应网站构建初期的测试很不方便。经过自己的摸索,找出了自认为不错的解决方案。

       下面是我的rewrite.xml文件中部分代码,其中添加了如何让js,css和一些图片文件地址重定向至有效路径的rewrite规则。

       

    <!-- js文件定向至指定目录 -->
    <rewrite url="^~/JS/([^\.]+).js$" to="~/JS/$1.js"  processing="stop"/>
    
    <!-- css文件定向至指定目录 -->
    <rewrite url="^~/Style/([^\.]+).css$" to="~/Style/$1.css"  processing="stop"/>
    
    <!-- 将各个图像文件定向至指定目录,注意要给每个文件类型写一个规则 -->
    <rewrite url="^~/Image/([^\.]+).gif$" to="~/Image/$1.gif"  processing="stop"/>
    <rewrite url="^~/Image/([^\.]+).jpg$" to="~/Image/$1.jpg"  processing="stop"/>
    <rewrite url="^~/Image/([^\.]+).ico$" to="~/Image/$1.ico"  processing="stop"/>

      经过上面规则,将截获所有.js, .css和各类型图像定位至指定目录。这样就解决了地址重写之后找不到对应文件的问题。

      PS:本人也是刚接触UrlRewrite,很多东西也不是清楚,文章有什么不是之处还望高手多多指教。


  • 相关阅读:
    给网站添加icon图标
    jquery动态改变元素内容
    jQuery判断checkbox是否选中的3种方法
    jquery datatable设置垂直滚动后,表头(th)错位问题
    网页弹出[Object HTMLDivElement],怎么取值?
    JS获取元素属性和自定义属性
    Thymeleaf显示Map集合数据
    带搜索框的select下拉框
    JQuery获取浏览器窗口的高度和宽度
    鼠标悬停在一个标签上时,显示一段文字
  • 原文地址:https://www.cnblogs.com/java20130722/p/3207116.html
Copyright © 2011-2022 走看看