为什么我在mod_pagespeed中获得了PNG的404

时间:2016-09-22 10:07:28

标签: wordpress apache .htaccess mod-rewrite mod-pagespeed

Apache服务器上的Wordpress中的 mod_pagespeed 模块存在一个小问题。我得到的404仅与 PNG 图像有关,但并非总是如此,并非所有人都有,甚至不是相同的图像。自动,有时你看,有时不会。

当它发生时,我尝试禁用mod_pagespeed插入?ModPagespeed=off,并且神奇地显示PNG图像。

当它发生时,挂在URL ?ModPagespeed=on&ModPagespeedFilters=上,您会看到PNG图像。

您再次看到PNG也一次启用过滤器,例如:

?ModPagespeed=on&ModPagespeedFilters=extend_cache

此时,我认为这可能是RewriteCond文件中.htaccess的问题。所以,我把例外:

RewriteCond %{REQUEST_URI} !pagespeed

下:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

但仍然无法奏效。我是否还将其与Wordpress的基本规则挂起?以下是:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

您怎么看?

提前致谢

1 个答案:

答案 0 :(得分:0)

你的RewriteCond:

RewriteCond %{REQUEST_URI} !pagespeed

有两个问题。

首先,QUERY_STRING是一个与REQUEST_URI不同的变量,所以你的REQUEST_URI实际上并不包含pagespeed。

其次,它区分大小写。

所以我相信你的意思是

RewriteCond %{QUERY_STRING} Pagespeed

请注意,如果您不确定字符串的大小写,或者它可能是其中之一,您可以使用RewriteCond末尾的[NC]标志来指示它不区分大小写。