如何阻止 WordPress 覆盖 .htaccess 文件

Nkenganyi Clovis Business Apr 28, 2023

.htaccess 文件是一个功能强大的配置文件,可让您控制 WordPress 站点在 Apache Web 服务器上的行为方式。 您可以使用它来设置重定向、重写 URL、启用防盗链、修改访问限制等。

为什么 WordPress 会覆盖 .htaccess 文件?

但是,有时 WordPress 可能会在您更新站点设置、安装或停用插件或更改永久链接结构时覆盖您的 .htaccess 文件。 这可能会导致您的自定义规则丢失或被 WordPress 默认规则覆盖。

某些 WordPress 插件将它们的配置存储在 .htaccess 文件中。 例如,LightSpeed Cache 插件会更改 .htaccess 文件以设置其缓存和优化功能。

此外,用户可以将自定义规则插入到 .htaccess 文件中,以管理他们的网站操作。

创建令人惊叹的网站

使用最好的免费页面构建器 Elementor

现在开始

然而,一些用户担心当 WordPress 使用新设置更新文件时,他们的自定义规则可能会被删除。 因此,一些用户选择手动配置 .htaccess 文件并禁止 WordPress 修改它。

在这篇博文中,我们将向您展示如何阻止 WordPress 覆盖您的 .htaccess 文件,以及如何在它们被覆盖时恢复您的自定义规则。

如何阻止 WordPress 覆盖 .htaccess 规则

幸运的是,您可以将自己的规则插入到 .htaccess 文件中,以防止它在上述情况下被覆盖。

下面是一些要遵循的基本准则,以防止出现此问题。

您可以通过搜索注释在文件中找到这些规则。

注释在代码开头显示为 ‘ # BEGIN WORDPRESS ’,在结尾显示为 ‘ # END WORDPRESS ’。 位于这些标签之间的所有代码都与 WordPress 系统相关联。

如果您在这些标签中插入自己的规则,则每次 CMS 生成新规则时它们都会被覆盖。 因此,避免在这两个标签之间放置任何您自己的规则至关重要。

不要修改插件标签内的代码

任何改变 .htaccess 文件中规则的插件都需要标记这些规则。 标签是相同的,只是在 BEGIN 和 END 之后插入了插件的名称。 例如,‘ # BEGIN WP FASTEST CACHE ’ 和 ‘ # END WP FASTEST CACHE ’。

上述内容也适用于此,如果您希望避免在每次修改缓存插件设置时丢失规则,请不要在这两个标签之间插入任何自定义规则。

创建您的自定义标签

如果您正在更改 .htaccess 文件中的规则,请创建您自己的部分并适当地标记它。

使用标签 BEGIN 表示开始,使用 END 表示自定义部分的结束。 下面是一个例子。

如何阻止 WordPress 修改 .htaccess

我们已经了解了 .htaccess 的工作原理,可以放心,我们在 .htaccess 文件中的自定义代码不会再次被覆盖。

话虽如此,让我们看看一些防止 WordPress 覆盖我们的 .htaccess 代码的技术。

更改 FTP 代码

防止 WordPress 更改 .htaccess 文件的一种方法是将文件设置为只读。

为此,您必须使用 FTP 客户端或 WordPress 托管提供商提供的文件管理器修改文件权限。

您可以在 WordPress 安装的根目录中找到 .htaccess 文件。 然后,右键单击该文件并选择 ‘ 文件权限 ’。

默认设置为 644,但您可以通过仅选中读取框将其更改为 444。

这意味着该文件只能读取而不能修改。 但是,可以随时更改这些权限。

使用 wp-config.php 文件中的代码阻止 WordPress 更改 .htaccess

注意:建议高级用户使用此方法。

如果您想在不阻止插件的情况下阻止 WordPress 修改 .htaccess,这将很有用。

要防止 WordPress 写入 .htaccess 文件,只需在 wp-config.php 文件的末尾插入以下代码片段。

add_filter('got_rewrite', '__return_false');

重要的是要注意,这也意味着将禁止对 URL 格式等进行任何更改,因为 WordPress 将无权对该文件进行任何更改。

结论

正如您所发现的,有多种方法可以防止 WordPress 覆盖 .htaccess 文件。

最直接的选择可能是第一个,它需要建立您自己的部分并在适当的位置插入您的规则。 这将使您能够保留 WordPress’ 的自动功能,同时还消除了在修改任何设置时丢失有时大量编写的规则的风险。

尽管如此,方法的选择完全取决于您的判断。

Divi WordPress Theme