Генератор .htaccess

Создание Apache htaccess

Основные настройки

Безопасность

Производительность

Страницы ошибок

Редиректы

.htaccess
# Generated by ToolNest .htaccess Generator
# 

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

# Remove WWW
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [L,R=301]

# Default index file
DirectoryIndex index.php

# Disable directory listing
Options -Indexes

# Protect .htaccess
<Files .htaccess>
    Order allow,deny
    Deny from all
</Files>

# Block bad bots
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} (bot|crawl|slurp|spider|mediapartners) [NC]
RewriteCond %{HTTP_USER_AGENT} !(googlebot|bingbot|yandex|duckduckbot) [NC]
RewriteRule .* - [F,L]

# Enable Gzip compression
<IfModule mod_deflate.c>
    AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css
    AddOutputFilterByType DEFLATE text/javascript application/javascript application/x-javascript
    AddOutputFilterByType DEFLATE application/json application/xml application/xhtml+xml
    AddOutputFilterByType DEFLATE image/svg+xml font/ttf font/otf
</IfModule>

# Browser caching
<IfModule mod_expires.c>
    ExpiresActive On
    ExpiresByType text/html "access plus 3600 seconds"
    ExpiresByType text/css "access plus 2592000 seconds"
    ExpiresByType text/javascript "access plus 2592000 seconds"
    ExpiresByType application/javascript "access plus 2592000 seconds"
    ExpiresByType image/jpeg "access plus 2592000 seconds"
    ExpiresByType image/png "access plus 2592000 seconds"
    ExpiresByType image/gif "access plus 2592000 seconds"
    ExpiresByType image/webp "access plus 2592000 seconds"
    ExpiresByType image/svg+xml "access plus 2592000 seconds"
    ExpiresByType font/woff2 "access plus 31536000 seconds"
</IfModule>

# Custom error pages
ErrorDocument 404 /404.html
ErrorDocument 500 /500.html

Часто задаваемые вопросы

Что такое .htaccess?
.htaccess — конфигурационный файл Apache-сервера, управляющий редиректами URL, настройками безопасности, кэшированием и правилами доступа к файлам и папкам.
Нужен ли .htaccess для всех серверов?
Нет, .htaccess специфичен для Apache. Nginx использует nginx.conf, IIS — web.config. Многие современные хостинги используют Nginx — проверьте тип сервера.
Для чего обычно используют .htaccess?
Редиректы URL (www на без-www), принудительный HTTPS, кастомные страницы ошибок, защита от хотлинков, парольная защита, заголовки кэширования, блокировка ботов.