2017-03-05 120 views
0

我有一個WordPress的WooCommerce網站,有幾個不同的插件。最近,每月大約一次嘗試加載主頁以外的任何頁面都會導致404錯誤。我已經知道這是因爲某些重置.htaccess文件是完全空白的。一旦我重新上傳我的備份,它就會被修復。在網上尋找答案,它似乎可能是一個插件造成這一點,但我不知道哪一個,爲什麼現在呢?我還看到關於#BEGIN Wordpress的建議...#END Wordpress,但是.htaccess文件中已經存在這些信息,以及其他一些代碼,我不完全確定它來自哪裏。有關如何防止這種情況發生的建議?我的.htaccess權限目前是644,這裏是我的代碼:。wordpress網站上的.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 

<IfModule mod_mime.c> 
AddType application/x-javascript .js 
AddType text/css .css 
</IfModule> 
<IfModule mod_deflate.c> 
AddOutputFilterByType DEFLATE text/css application/x-javascript text/x-component text/html text/richtext image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon application/javascript 
<IfModule mod_setenvif.c> 
    BrowserMatch ^Mozilla/4 gzip-only-text/html 
    BrowserMatch ^Mozilla/4\.0[678] no-gzip 
    BrowserMatch \bMSIE !no-gzip !gzip-only-text/html 
</IfModule> 
<IfModule mod_headers.c> 
    Header append Vary User-Agent env=!dont-vary 
</IfModule> 
</IfModule> 

回答

0

它可能是一個插件清除文件;您需要停用全部並重新激活,並且需要一些時間才能查看哪個插件是問題。

嘗試將文件權限設置爲444,並查看是否停止將文件寫入並保存爲空白。 444權限將只允許root寫入文件,通常不是插件具有的權限。如果該文件仍然在444處被消隱,那麼它可能是服務器問題或設計錯誤的插件,因爲root仍然能夠寫入文件。

只要WordPress繼續能夠讀取文件並正常工作,您甚至可以訪問440或400個權限。

這也可能是惡意軟件;當您恢復備份時,是否只恢復.htaccess文件或整個站點?你是否用良好的副本替換了所有WP文件和文件夾?您是否掃描了該網站的惡意軟件?

.htaccess中的其他代碼是添加瀏覽器gzip壓縮;它不會破解代碼,並且不會導致文件被保存爲空白。它要麼手動添加,要麼由插件添加。