Centos
無法訪問與 WordPress 一起安裝的 PageSpeed 控制台;收到 503 錯誤和“LimitInternalRecursion”錯誤
在 /var/www/html/wordpress 中安裝了 Wordpress 並使用 PageSpeed 進行記憶體的 CentOS 6 Web 伺服器上,我無法通過 Web 瀏覽器訪問 /pagespeed_console。
我只收到 503 錯誤。
搜尋 httpd /var/log/httpd/error_log 顯示“LimitInternalRecursion”。
/var/log/httpd/access_log:
"GET /pagespeed_console HTTP/1.1" 500 395 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.107 Safari/537.36"
/var/log/httpd/error_log:
Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace.
問題出在用於 CentOS 的 SELinux 上。
在 CLI 上鍵入以下內容:chcon -R -t httpd_sys_content_t /var/cache/mod_pagespeed
說明在“為什麼我在 CentOS、RHEL 或任何使用 SELinux 的系統上的日誌文件中出現 Permission denied 錯誤?”部分中列出了說明。在https://developers.google.com/speed/pagespeed/module/faq
您的重寫規則正在發生衝突並產生內部重定向大屠殺。
只需向它添加另一個條件,以便 /pagespeed_console 不會被重寫。
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteRule ^server-status$ - [L] # do not parse mod_pagespeed URIs RewriteCond %{REQUEST_URI} !^/mod_pagespeed_[a-z_]+$ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule>