.htaccess: редиректы, правила rewrite и защита сайта

Хостинг и cPanel · 15.07.2025
.htaccess: редиректы, правила rewrite и защита сайта

Файл .htaccess позволяет настраивать Apache прямо в папке сайта без доступа к конфигурации сервера. Он находится в public_html/.

⚠️ Ошибка в .htaccess вызывает ошибку 500 для всего сайта. Всегда делайте резервную копию перед редактированием.

301 редиректы

RewriteEngine On

# Со старой страницы на новую
Redirect 301 /old-page.html /new-page

# Редирект всей папки
RedirectMatch 301 ^/old-section/(.*)$ /new-section/$1

www ↔ без www

RewriteEngine On

# Перенаправить ВСЕ запросы на www
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]

# Или наоборот — убрать www
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]

HTTP → HTTPS редирект

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

Защита папки паролем

# Создайте файл .htpasswd:
# htpasswd -c /home/user/.htpasswd adminuser

# В .htaccess папки:
AuthType Basic
AuthName "Protected Area"
AuthUserFile /home/user/.htpasswd
Require valid-user

Блокировка IP-адресов

# Заблокировать конкретный IP
Deny from 203.0.113.42

# Разрешить только свой IP
Order deny,allow
Deny from all
Allow from 203.0.113.10

Кэширование статических файлов


ExpiresActive On
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType image/webp "access plus 1 year"
ExpiresByType text/css "access plus 1 month"
ExpiresByType application/javascript "access plus 1 month"
✅ После изменений в .htaccess проверьте сайт в режиме инкогнито. Если ошибка 500 — верните предыдущую версию через cPanel → Файловый менеджер.
← Назад в базу знаний Задать вопрос поддержке