使用mod_pagespeed指定基本URL?

时间:2014-11-02 17:45:30

标签: apache cpanel pagespeed mod-pagespeed google-pagespeed

我已经安装了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文件执行此操作。提前感谢您提供的任何帮助!

2 个答案:

答案 0 :(得分:1)

不,mod_pagespeed无法做到这一点。以下是您可以使用的唯一URL重写控制选项:

https://developers.google.com/speed/pagespeed/module/restricting_urls

您可以使用Apache的mod_rewrite重写URL。但是,请注意以下限制:

https://code.google.com/p/modpagespeed/issues/detail?id=676

答案 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请求,这将打破页面。

相关问题