Генератор .htaccess
Увімкніть потрібні блоки правил — редиректи, HTTPS, сторінки помилок, захист паролем, посилення безпеки, кешування — і складіть їх в один упорядкований файл .htaccess. Кожне поле відображається як звичайний текст, тож ніщо з введеного тут ніколи не виконується.
Редиректи
Редиректи URL 301 / 302
Надішліть старий шлях на новий. Виконується перед універсальним перехоплювачем, тож маршрутизація PHP-застосунку ніколи не поглинає ці правила.
Схема й хост
Примусовий HTTPS і канонізація www
Сайт має відповідати рівно на одній схемі й одному хості. Усе інше має перенаправлятися туди.
Помилки
Власні сторінки помилок
Показуйте власну сторінку замість типової сторінки Apache, коли запит повертає 404, заборонений або сервер дає збій.
Контроль доступу
Захистити каталог паролем
Basic Auth силами самого Apache — запит на вхід перед папкою, без участі коду застосунку.
Посилення захисту
Посилення безпеки
Невеликі директиви, що закривають поширені, реально використовувані зловмисниками неправильні конфігурації.
Продуктивність
Стиснення й кешування в браузері
Дві незалежні переваги: менші відповіді по мережі й повторні відвідувачі, що взагалі пропускають запит.
Пропускна здатність
Захист від хотлінкінгу
Заборонити іншим сайтам вбудовувати ваші зображення напряму й витрачати вашу пропускну здатність, перевіряючи заголовок Referer.
Застосунки PHP
Переписування на front-controller
Спрямовує кожен запит, що не є реальним файлом чи папкою, до одного файлу PHP, щоб власний роутер застосунку вирішував, що з ним робити.
Складений файл
.htaccess
Правила переписування виконуються згори вниз в одному блоці rewrite, у такому порядку:
- Примусовий HTTPS
Складений .htaccess
# .htaccess — composed with Wespner's .htaccess Generator
# Review before deploying: https://wespner.eu/tools
<IfModule mod_rewrite.c>
RewriteEngine On
# Force HTTPS
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</IfModule>
# Custom error pages
ErrorDocument 404 /errors/404.html
# Block access to dotfiles (.git, .env, .htpasswd, ...)
<IfModule mod_authz_core.c>
<FilesMatch "^\.">
Require all denied
</FilesMatch>
</IfModule>
# Disable directory listing
Options -Indexes
# Disable the Apache version banner on error pages
ServerSignature Off
Використовуєте nginx? .htaccess нічого не робить.
Керуєте власним ігровим сервером?
Ігрові сервери Wespner із захистом від DDoS, дисками NVMe та активацією за кілька хвилин.