Как запретить WordPress перезаписывать файл .htaccess

Nkenganyi Clovis Бизнес Apr 28, 2023

Файл .htaccess — это мощный файл конфигурации, который позволяет вам контролировать поведение вашего сайта WordPress на веб-сервере Apache. Вы можете использовать его для настройки перенаправлений, перезаписи URL-адресов, включения защиты от хотлинков, изменения ограничений доступа и многого другого.

Почему WordPress перезаписывает файл .htaccess ?

Однако иногда WordPress может перезаписывать ваш файл .htaccess при обновлении настроек сайта, установке или деактивации плагинов или изменении структуры постоянных ссылок. Это может привести к тому, что ваши пользовательские правила будут потеряны или перезаписаны правилами WordPress по умолчанию.

Некоторые плагины WordPress хранят свои настройки в файле .htaccess. Например, плагин LightSpeed ​​Cache изменяет файл .htaccess, чтобы настроить его функции кэширования и оптимизации.

Кроме того, пользователи могут вставлять собственные правила в файл .htaccess для управления операциями своего веб-сайта ’s.

Создавайте потрясающие сайты

С лучшим бесплатным конструктором страниц 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.

Вы можете найти файл .htaccess в корневом каталоге вашей установки WordPress. Затем щелкните файл правой кнопкой мыши и выберите ‘Права доступа к файлу’.

Значение по умолчанию — 644, но вы можете изменить его на 444, отметив только поля для чтения.

Это означает, что файл можно только читать и ничего нельзя изменить. Однако эти разрешения можно изменить в любое время.

Блокировка WordPress от изменения .htaccess с помощью кода в файле wp-config.php

Примечание. Этот метод рекомендуется ТОЛЬКО для опытных пользователей.

Это полезно, если вы хотите, чтобы WordPress не модифицировал .htaccess, не блокируя ваши плагины.

Чтобы WordPress не записывался в файл .htaccess, просто вставьте следующий фрагмент кода в конце файла wp-config.php.

add_filter('got_rewrite', '__return_false');

Важно отметить, что это также означает, что любые изменения формата URL-адреса и т. д. будут запрещены, поскольку WordPress не будет иметь права вносить какие-либо изменения в файл.

Заключение

Как вы уже поняли, существует несколько способов предотвратить перезапись файла .htaccess WordPress.

Самый простой вариант, вероятно, первый, который влечет за собой создание собственных разделов и вставку ваших правил в соответствующие места. Это позволит вам сохранить автоматические функции WordPress’, а также устранит риск потери ваших иногда подробно написанных правил при изменении каких-либо настроек.

Тем не менее, выбор метода полностью на ваше усмотрение.

Divi WordPress Theme