Администрирование
Today
Файл .htaccess: Полное руководство по настройке Apache
Файл .htaccess — это конфигурационный файл веб-сервера Apache, который позволяет настраивать работу сервера прямо на уровне директорий. Не нужно лезть в глобальные настройки сервера — всё делается в одном файле.
Что важно знать сразу:
- Apache проверяет файл при каждом запросе к сайту
- Изменения вступают в силу моментально
- Синтаксические ошибки = ошибка 500 (сайт ляжет)
- Слишком много правил = просадка производительности
Базовые возможности
🔒 Контроль доступа по IP
Заблокировать конкретный IP (например, спамера):
apacheOrder Deny,Allow Deny from 123.123.123.123
Разрешить доступ только определённым IP (для тестовой версии сайта или админки):
apacheOrder Deny,Allow Deny from all Allow from 123.123.123.123
🔤 Кодировка
Чтобы русский, китайский и любой другой текст отображался корректно:
apacheAddDefaultCharset UTF-8
⚠️ Кастомные страницы ошибок
Вместо стандартной 404 — своя страница с поиском и полезными ссылками:
apacheErrorDocument 404 /errors/404.html ErrorDocument 403 /errors/403.html ErrorDocument 500 /errors/500.html
Управление URL
Чистые URL без расширений
Превращаем site.ru/about.html → site.ru/about:
apacheRewriteEngine On
RewriteCond %{REQUEST_URI} (.*/[^/.]+)($|\?)
RewriteRule .* %1.html [R=301,L]Убираем слеш в конце
apacheRewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)/$ /$1 [R=301,L]Редирект www → без www
Важно для SEO — убираем дубли страниц:
apacheRewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]Безопасность
Защита от хотлинка
Кто-то встраивает ваши картинки на свой сайт? Показываем ему заглушку:
apacheRewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?site\.ru [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ /images/stop-hotlinking.jpg [NC,R,L]Это только начало
В полной версии статьи на сайте разобраны:
- 🛡 Защита от брутфорса — правила mod_security, rate-limiting, блокировка ботов
- ⚡ Кэширование статики — как правильно настроить Expires с версионированием файлов
- 📦 GZIP-сжатие — уменьшение размера HTML до 70%, CSS до 80%
- 🖥 Настройка для SPA — роутинг React/Vue через .htaccess
- 🐛 Отладка и логирование — включение логов ошибок, режим разработки
- ❌ Типичные ошибки — что ломает сайт и как этого избежать
📎 Полная версия с примерами и готовыми конфигами → 0x.69.ru