Как в .htaccess выбрать главную страницу, сделать свои страницы ошибок, спрятать список файлов и настроить переадресации.
Содержание
.htaccess — это файл с настройками сайта для веб-сервера. Он лежит в папке public_html (или в любой подпапке) и действует на неё и на всё, что внутри. На нашем хостинге он работает, переадресации (mod_rewrite) включены — ничего включать не нужно. Многое из этой статьи можно сделать и без файла, мышкой в cPanel — нужные разделы указаны ниже.
Открывается не та главная страница
Залили сайт, а открывается старая заглушка? Скорее всего, в папке остался старый index.html, а ваш сайт начинается с index.php. Удалите лишний файл или скажите серверу в .htaccess, что открывать первым:
DirectoryIndex index.php index.html
Свои страницы ошибок
Добавьте в .htaccess строки:
ErrorDocument 404 /404.html
ErrorDocument 500 /500.html
Путь пишите от корня сайта, без https:// и домена. Если указать полный адрес, сервер вместо ошибки отправит посетителя на другую страницу — и поисковики не поймут, что страницы нет. Без файла то же делается в cPanel, раздел Error Pages.
Список файлов в папке
Если в папке нет главной страницы, сервер может показать всем список её файлов. Чтобы запретить, добавьте в .htaccess:
Options -Indexes
В cPanel — раздел Indexes.
Переадресации
Две самые частые — тоже строками в .htaccess:
# одна страница на другую
Redirect 301 /old-page/ https://example.ru/new-page/
# с www на адрес без www
RewriteEngine On
RewriteCond % ^www\.(.+)$ [NC]
RewriteRule ^ https://%1% [R=301,L]
Как открыть сайт только по HTTPS — в статье Переадресация на HTTPS. Без файла переадресации делаются в cPanel, раздел Redirects.
Закрыть сайт или папку
# пустить только с одного адреса — например, пока сайт в разработке
Require ip 203.0.113.10
Запретить отдельные адреса можно и в cPanel, раздел IP Blocker.
Кодировка
Если браузер путает кодировку страниц, подскажите ему: AddDefaultCharset UTF-8. Подробнее — Вопросы и кракозябры вместо русских букв.

