2017-03-05 54 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压缩;它不会破解代码,并且不会导致文件被保存为空白。它要么手动添加,要么由插件添加。