2014-11-21 76 views
1

我有一個運行Debian 7的VPS,Virtualmin 4.12gpl以及Apache 2.2.22,PHP 5.4.35和MySQL 5.5.40的非常優秀的配置以及WordPress 4.01 。403禁止的錯誤只爲某些內容的某些用戶提供

我遇到一個非常奇怪的問題,其中某些資源(例如圖像和樣式表)正在爲某些用戶生成403錯誤,而不是其他用戶。 http://lunchtime.org.uk/wp-content/themes/GLA5/style.css(我不!)

一些用戶嘗試加載該圖像時獲得403::(!我這樣做)http://lunchtime.org.uk/wp-content/themes/GLA5/img/podcast.png

例如,試圖加載這個樣式表時,一些用戶收到403

我試過幾件事情:

  • 更改權限沒有任何效果。我甚至將其設置爲777,並且違規文件仍然無法加載。另外,我可以通過FTP查看並下載文件。
  • 我認爲mod_security可能是問題,但未安裝
  • .htaccess文件對於WordPress安裝來說看起來很正常。
  • 禁用緩存\ permalink相關的插件,並清除我自己的緩存不會做任何事情
  • 使用virtualmin的'修復文件所有權和權限'按鈕什麼也不做。

我也試着運行(作爲一個例子)

chown -R www-data:www-data podcast.png 
手動

,但它沒有任何效果。

可能值得一提的是,我已經在其他兩個VPS上設置了相同的站點,並且工作得很好。我星期一將所有內容遷移到了這臺服務器,只需通過FTP複製所有文件並在phpMyAdmin中執行數據庫導出\導入即可。

這裏的.htaccess文件:

# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 

# END WordPress 

我不會在這裏張貼整個Apache的錯誤日誌,但每一個錯誤是這樣的:

[Fri Nov 21 00:09:21 2014] [crit] [client 141.101.98.168] (13)Permission denied: /home/lunchtime/public_html/wp-content/themes/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable 

謝謝。

+0

防彈安全可能會改變.htaccess 440,將其更改爲640. – Ohgodwhy 2014-11-21 00:15:32

+0

錯誤是權限的htaccess文件,而不是內容。 Apache需要能夠讀取它。 – 2014-11-21 02:12:13

回答

0

nvm想通了

......我小子,我小子!

最近更新了apache,它改變了FilterProvider指令的語法。事實證明,我使用的HTML5樣板文件.htaccess文件的版本是使用舊的語法。

如果遇到此問題,請打開您的。htaccess文件做

FilterProvider 

根據this Github Comment(其指令我也跟着)搜索,你應該改變,看起來像這樣的任何行:

FilterProvider COMPRESS DEFLATE resp=Content-Type $text/html 

進入這個:

FilterProvider COMPRESS DEFLATE "%{CONTENT_TYPE} = 'text/html'" 
相關問題