Wordpress错误地提供内容类型为plain / text的页面

时间:2014-06-25 20:43:56

标签: php wordpress .htaccess wordpress-plugin w3-total-cache

我有一个wordpress网站,我托管我的博客。最近,在没有任何(有意识的)更改配置的情况下,我开始遇到主要索引页面使用Content-Type text/plain而不是正确text/html的问题,导致访问者看到源代码,而不是呈现的页面。

我正在使用W3TC浏览器缓存插件,并将问题范围缩小到.htaccess文件的这一部分:

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteBase /
  RewriteCond %{HTTP:Accept-Encoding} gzip
  RewriteRule .* - [E=W3TC_ENC:_gzip]
  RewriteCond %{HTTP_COOKIE} w3tc_preview [NC]
  RewriteRule .* - [E=W3TC_PREVIEW:_preview]
  RewriteCond %{REQUEST_METHOD} !=POST
  RewriteCond %{QUERY_STRING} =""
  RewriteCond %{REQUEST_URI} \/$
  RewriteCond %{HTTP_COOKIE} !(comment_author|wp\-postpass|w3tc_logged_out|wordpress_logged_in|wptouch_switch_toggle) [NC]
  RewriteCond %{HTTP_USER_AGENT} !(W3\ Total\ Cache/0\.9\.4) [NC]
  RewriteCond "%{DOCUMENT_ROOT}/wp-content/cache/page_enhanced/%{HTTP_HOST}/%{REQUEST_URI}/_index%{ENV:W3TC_PREVIEW}.html%{ENV:W3TC_ENC}" -f
  RewriteRule .* "/wp-content/cache/page_enhanced/%{HTTP_HOST}/%{REQUEST_URI}/_index%{ENV:W3TC_PREVIEW}.html%{ENV:W3TC_ENC}" [L]
</IfModule>
# END W3TC Page Cache core

如果我从.htaccess文件中删除此部分,则该页面会正确加载,并使用正确的Content-Type。但是W3TC喜欢在删除它之后的某个时间恢复此块,问题就会恢复。

0 个答案:

没有答案