【问题标题】:RewriteRule for Javascript/css versioning用于 Javascript/css 版本控制的 RewriteRule
【发布时间】:2011-01-27 00:41:33
【问题描述】:

我编写了一个实用程序来处理我的 CSS 和 JS 文件的版本控制以用于缓存目的,但是,我正在努力正确设置 RewriteRule 以加载原始文件。

版本控制工具写入新 URL 的方式如下:

本地

<script src="20110125/contact.js" type="text/javascript"></script>

全球

<script src="../Scripts/js/20110125/core.js" type="text/javascript"></script>

我的 RewriteRules 去除时间戳并仅加载路径和文件名。它们如下:

#rewrite core js
RewriteRule ^(\/Scripts\/[a-z]*\/)[0-9]*\/(.*)  $1$2 [NC]

#rewrite directory level js
RewriteRule .+\/(.+\.js)    $1 [NC]

但是,当我发出页面请求时,我在页面上收到 404。任何帮助表示赞赏。

【问题讨论】:

    标签: mod-rewrite versioning


    【解决方案1】:

    你的 JS 文件的路径很奇怪;我建议只使用/js/javascript,并且不要在URL 中的文件或路径名中使用大写字母。你想用你的第二个 RewriteRule 做什么?

    #           /js/123456/jquery.js to /js/jquery.js
    RewriteRule ^/js/[0-9]+/(.+).js$ /js/$1.js [L]
    

    【讨论】:

    • 不幸的是,我继承了目录结构,这让我的任务变得更加困难,因为我不太精通正则表达式。第二个重写规则是处理目录级别的 js 文件。该结构有一个核心文件以及本地目录级别的 js 文件,用于目录需要 javascript 功能。
    猜你喜欢
    • 2015-09-06
    • 1970-01-01
    • 2011-10-11
    • 1970-01-01
    • 2019-01-15
    • 1970-01-01
    • 2011-04-27
    • 1970-01-01
    • 2010-10-01
    相关资源
    最近更新 更多