我已经安装了mod_pagespeed,我正在试图弄清楚这是否可行。
示例网址:
<script src="/assets/build/js/test.js"></script>
以上网址被重写为:
<script src="/assets/build/js/test.js.pagespeed.jm.QCz72nUS30.js"></script>
我想要做的是将网址重写到网站的基础或我特定的文件夹。例如,我希望重写的URL看起来像这样:
<script src="/test.js.pagespeed.jm.QCz72nUS30.js"></script>
或类似的东西:
<script src="/sample-folder/test.js.pagespeed.jm.QCz72nUS30.js"></script>
这可以用mod_pagespeed配置吗?我想对所有图像,javascript和CSS文件执行此操作。提前感谢您提供的任何帮助!
答案 0 :(得分:1)
不,mod_pagespeed无法做到这一点。以下是您可以使用的唯一URL重写控制选项:
https://developers.google.com/speed/pagespeed/module/restricting_urls
您可以使用Apache的mod_rewrite重写URL。但是,请注意以下限制:
答案 1 :(得分:0)
这是不可能的,因为至少如所描述的那样它不起作用。假设您的网站上有两个名为test.js
的不同文件:
/assets/build/js/test.js
/testing/test.js
想象一下,您可以告诉PageSpeed将所有内容放在您的网络服务器根目录中:
/test.js.pagespeed.jm.QCz72nUS30.js
/test.js.pagespeed.jm.8U69T_7wiB.js
只要这些资源保留在PageSpeed的缓存中,这就可以工作:它可以使用url的哈希部分来查看其缓存并找到用户想要的资源。但是当缓存变满并且某些东西被驱逐时会发生什么?然后一个请求进入其中一个,它不在缓存中,并且PageSpeed没有足够的信息可用于重建原始URL,因此它可以重新生成它。 PageSpeed将不得不404请求,这将打破页面。