# Понимание .htaccess на KapsuleHost

Source: https://support.kapsulehost.com/ru-ru/wordpress-htaccess

KapsuleHost обслуживает каждый сайт с помощью высокопроизводительного веб-сервера, который не читает `.htaccess`, поэтому правила, добавленные в этот файл, не имеют никакого эффекта: это руководство объясняет, что это значит для сайта на WordPress, и показывает настройку KPanel, которая выполняет ту же задачу вместо него.

Если вы переехали с хостинга на общем cPanel, `.htaccess` был, вероятно, тем местом, куда вы помещали перенаправления, принудительный HTTPS, пользовательские страницы ошибок и блокировки ботов. Всё это по-прежнему работает на KapsuleHost. Просто это настраивается в KPanel, а не в текстовом файле, и, поскольку эти настройки применяются на уровне сервера, они работают быстрее и не могут сломать ваш сайт из-за опечатки.

## Почему .htaccess здесь ничего не делает

`.htaccess` это файл конфигурации для каждой директории, предназначенный для веб-сервера Apache. Apache перечитывает его при каждом запросе, что делает его удобным, но одновременно и медленным.

KapsuleHost не использует Apache. Ваш сайт обслуживается событийно-ориентированным веб-сервером, который загружает свою конфигурацию один раз при запуске, и это во многом объясняет, почему сайты здесь отвечают быстрее под нагрузкой. У этого сервера нет аналога файла переопределения для каждой директории, поэтому он никогда не открывает `.htaccess`.

> **Warning:** Добавление правил в `.htaccess` на сайте KapsuleHost завершается без каких-либо ошибок. Ничего не выдаёт ошибку, ничего не предупреждает, а файл остаётся именно там, где вы его оставили. Правила просто никогда не выполняются. Если вы следуете руководству по WordPress, в котором говорится "добавьте это в ваш .htaccess", найдите соответствующий аналог в KPanel в таблице ниже.

Хорошая новость в том, что здесь всё наоборот по сравнению с обычной историей ужасов про `.htaccess`: синтаксическая ошибка в файле не может привести к падению вашего сайта, потому что его никто не разбирает.

## Что по-прежнему работает без него

**Постоянные ссылки.** Самая частая причина, по которой сайту на WordPress нужен `.htaccess` на Apache, это красивые постоянные ссылки. На KapsuleHost переписывание встроено в конфигурацию сервера вашего сайта, поэтому `/2026/07/my-post/` разрешается через WordPress вообще без какого-либо блока `.htaccess`. Если постоянные ссылки возвращают ошибки 404, причина в чём-то другом: см. [Устранение проблем с постоянными ссылками WordPress](https://support.kapsulehost.com/ru-ru/wordpress-permalink-issues).

**Запись WordPress в файл.** WordPress и некоторые плагины по-прежнему записывают блоки `# BEGIN`/`# END` в `.htaccess`, потому что предполагают наличие Apache. Это безвредно. Файл реально существует, он доступен для записи, и вы увидите его в менеджере файлов. У него просто нет читателя.

**Плагины безопасности, сообщающие, что "усиление защиты применено".** Плагины, которые заявляют, что защитили `xmlrpc.php` или `wp-config.php`, редактируя `.htaccess`, на самом деле ничего не защитили на этой платформе. Используйте собственную вкладку сайта **Безопасность**, которая применяет эквивалентные правила на сервере.

## Аналоги в KPanel для распространённых правил .htaccess

Каждый из них находится прямо на самом сайте: **Веб-сайты**, затем ваш сайт, затем указанная вкладка.

| Что вы написали бы в .htaccess | Где это находится в KPanel |
|---|---|
| `RewriteCond %{HTTPS} off` для принудительного HTTPS | **Параметры**, затем **Принудить HTTPS** в разделе Behavior |
| `Redirect 301 /old /new` | **Параметры**, затем **Перенаправления** |
| `ErrorDocument 404 /404.html` | **Параметры**, затем **Страницы ошибок** |
| `AuthType Basic` для защиты паролем папки | **Параметры**, затем **Защита паролем** |
| `Require not ip 203.0.113.4` для блокировки адреса | **WordPress**, затем **Безопасность** |
| `RewriteCond %{HTTP_USER_AGENT} (BadBot)` для блокировки краулеров | **Производительность**, затем **Краулеры** |
| `DirectoryIndex index.php index.html` | **Параметры**, затем **Индекс директории** в разделе Serving |
| `mod_deflate` / `mod_expires` для сжатия и кэширования | Уже включено. Заголовки сжатия и кэша устанавливаются на сервере |

Два из этих пунктов делают больше, чем когда-либо могла версия на `.htaccess`. Перенаправления поддерживают точные пути, префиксы с завершающей косой чертой и подстановочные знаки, такие как `/blog/*`, и KPanel проверяет перенаправление в реальном времени сразу после сохранения. Страницы ошибок отдаются с их настоящим кодом состояния, поэтому пользовательская страница 404 остаётся настоящей 404 для поисковых систем, а не 200 с извинением на ней.

![Страница Redirects для сайта в KPanel, где перенаправления применяются веб-сервером](https://support.kapsulehost.com/help/screenshots/wordpress-htaccess.1030a8b1.webp)

## Поиск и просмотр файла

Вам может всё ещё понадобиться посмотреть на `.htaccess`, обычно чтобы увидеть, что записал в него плагин, или скопировать правила перед тем, как воссоздать их в KPanel.

### Через вкладку WordPress

1. Войдите в [KPanel](https://kpanel.kapsulehost.com) и нажмите **Веб-сайты** в левой боковой панели.
2. Нажмите на нужный сайт.
3. Откройте вкладку **WordPress**, затем раздел **wp-config**.
4. Прокрутите до панели `.htaccess`. Содержимое показывается только для чтения, с кнопкой **Edit**, если вам нужно его изменить.

### Через менеджер файлов

1. Откройте сайт, затем **Параметры**, затем **Менеджер файлов**.
2. Нажмите **Показать скрытые** на панели инструментов. Файлы, начинающиеся с точки, по умолчанию скрыты, поэтому `.htaccess` не появится, пока вы это не сделаете.
3. Нажмите `.htaccess`, чтобы открыть его во встроенном редакторе.

Файл находится в корне вашего сайта, рядом с `wp-config.php` и `wp-content`. Полное описание редактора и его настроек прав доступа смотрите в [Использование менеджера файлов](https://support.kapsulehost.com/ru-ru/file-manager).

> **Tip:** Сделайте резервную копию перед тем, как редактировать что-либо в корне сайта, даже файл, который не читается. Это ничего не стоит и означает, что одним кликом можно всё вернуть обратно. См. [Создание резервной копии](https://support.kapsulehost.com/ru-ru/taking-a-backup).

## Блок WordPress по умолчанию

Для справки, вот блок, который WordPress записывает сам для себя. На хостинге Apache он управляет постоянными ссылками. На KapsuleHost он неактивен, и его удаление ничего не сломает:

```apache
# 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
```

Оставьте его на месте, если вы можете позже перенести сайт на хостинг Apache. WordPress всё равно перепишет его в следующий раз, когда вы сохраните настройки постоянных ссылок.

## Если вы переносите правила

Когда вы переносите сайт с cPanel, откройте старый `.htaccess` перед тем, как отменить старый хостинг, и пройдитесь по нему построчно:

1. **Перенаправления.** Воссоздайте каждое правило `Redirect` или `RewriteRule` в **Параметры**, затем **Перенаправления**. Одна строка на одно правило. Выберите 301 для постоянного перемещения, 302, если изменение может быть отменено.
2. **Принудительный HTTPS.** Удалите его. Вместо этого включите **Принудить HTTPS** в разделе **Параметры** сайта.
3. **Блокировки по IP.** Воссоздайте в **WordPress**, затем **Безопасность**, на панели блокировки IP.
4. **Заголовки кэширования и сжатия.** Удалите их. Они обрабатываются за вас, а устаревшие правила `mod_expires` со старого хостинга являются частой причиной запутанного поведения кэша.
5. **Всё, что записал плагин.** Игнорируйте это. Переустановите плагин на новом сайте и дайте ему сделать своё дело.

При переносе сам файл сохраняется, так что ничего не теряется, пока вы проходитесь по списку. Полное пошаговое руководство по переносу: [Перенос сайта с cPanel](https://support.kapsulehost.com/ru-ru/sites-migrate-cpanel).

## Устранение неполадок

**"Я добавил перенаправление в .htaccess, и ничего не произошло."** Ожидаемо. Добавьте его в **Параметры**, затем **Перенаправления**. Столбец Status там сообщит вам, было ли перенаправление проверено в реальном времени.

**"Плагин говорит, что мой сайт защищён, но сканер с этим не согласен."** Плагин записал правила `.htaccess`, которые не читаются. Проверьте вкладку сайта **Безопасность** на предмет действительно применённых мер защиты.

**"В .htaccess моего старого хостинга были правила, которые я не понимаю."** Не копируйте их вслепую. Откройте тикет с прикреплённым файлом, и мы скажем вам, у каких из них есть аналог в KapsuleHost, а какие служили лишь для компенсации недостатков общего хостинга Apache.

**"Постоянные ссылки не работают."** Здесь это не проблема `.htaccess`. Перейдите к [Устранение проблем с постоянными ссылками WordPress](https://support.kapsulehost.com/ru-ru/wordpress-permalink-issues) или очистите правила перезаписи во вкладке сайта **WordPress**, затем **Быстрые действия**, затем **Очистить переписи**.
