Root .htaccess文件被Wordpress覆盖

时间:2016-01-06 14:29:35

标签: wordpress apache .htaccess

我不确定我的.htaccess文件是否有问题,但我最近注意到它被覆盖了。它位于网站目录的根文件夹中。这就是我.htaccess中的内容:

RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{HTTP_HOST} ^mysite\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.mysite\.com$

## EXPIRES CACHING ##
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/jpg "access 1 week"
ExpiresByType image/jpeg "access 1 week"
ExpiresByType image/gif "access 1 week"
ExpiresByType image/png "access 1 week"
ExpiresByType text/css "access 1 week"
ExpiresByType application/pdf "access 1 month"
ExpiresByType text/x-javascript "access 1 week"
ExpiresByType application/x-shockwave-flash "access 1 month"
ExpiresByType image/x-icon "access 1 year"
ExpiresDefault "access 1 week"
</IfModule>
## EXPIRES CACHING ##

# 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

被覆盖后,我留下了这个:

# 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

如何防止这种情况发生?该网站位于共享主机上。

其他信息(2016年1月15日): 我在登台网站上有一个带有相同插件的网站副本。现场网站上只有几个不同的插件。否则它们完全相同。

在实际网站上,今天我发现.htaccess文件每隔几秒就会更新一次。我登录到FTP,每次刷新目录时,都会看到Last Modified时间已更改。我再次添加了上面的代码,每隔几分钟刷新一次目录。它不断改变Last Modified时间,但内容没有改变。我认为它会每隔几周左右完全覆盖一次内容。这可能发生了什么,但我不知道为什么。无论如何,我还将文件权限从644更改为444.执行此操作后,Last Modified时间在每次刷新时都没有更改。我会密切注意这一点,并在几天后再次检查。

这可能是托管服务提供商的问题吗?日志中没有任何内容表明任何有用的内容。

1 个答案:

答案 0 :(得分:0)

您是否更新了帖子格式?通常,它会将信息添加到.htaccess而不是重新创建它,但它可能正在发生。另一个猜测是@joe建议:尝试禁用你的插件,看看会发生什么。

最后,您可以使用权限使.htaccess只读。如果您需要有关权限的帮助,这是一个很好的起点:http://www.december.com/unix/ref/chmod.html