gpt4 book ai didi

apache - 如何配置 mod_rewrite 来提供缩小的文件(如果可用)?

转载 作者:行者123 更新时间:2023-12-02 07:17:37 24 4
gpt4 key购买 nike

问题是:我们有大量的 Javascript 和 CSS 文件,我们宁愿将其缩小。缩小很简单:设置 YUI 压缩器,运行 Ant 任务,它会生成缩小的文件,我们将其保存在原始文件旁边。

因此,我们最终在 DocumentRoot 中的某个位置得到以下目录结构:

/   /js      /min         foo-min.js         bar-min.js      foo.js      bar.js      quux.js   /css      ...

现在我们需要的是 Apache 从 min 子目录提供文件,如果压缩版本不可用,则返回到提供未压缩文件。最后一个问题是我无法解决的。

例如:假设我们有一个请求 example.com/js/foo.js - 在这种情况下 Apache 应该发送 /js/min/foo-min.js 的内容。没有缩小的 quux.js,因此对 /js/quux.js 的请求返回 /js/quux.js 本身,而不是 404。最后,如果没有 /js/fred.js,那么最终应该是 404。

实际上,我设置构建脚本的方式是未缩小的文件不会部署在生产服务器上,但此配置在集成服务器和开发计算机上仍然可能有用。

最佳答案

这是最终起作用的配置:

/js/.htaccess:

RewriteEngine On

RewriteBase /js

RewriteCond %{REQUEST_URI} ^/js/((.+)\.js)$
RewriteCond %{DOCUMENT_ROOT}/js/min/%2-min.js -f
RewriteRule ^(.+)$ min/%2-min.js [L]

css 目录相同。

关于apache - 如何配置 mod_rewrite 来提供缩小的文件(如果可用)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/243124/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com