111 lines
4.0 KiB
ApacheConf
111 lines
4.0 KiB
ApacheConf
# .htaccess для сайта медицинского центра ФИДЕМ
|
|
|
|
# Включить модуль перезаписи
|
|
RewriteEngine On
|
|
|
|
# Редирект на HTTPS (если нужно)
|
|
# RewriteCond %{HTTPS} off
|
|
# RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
|
|
|
|
# Сжатие файлов
|
|
<IfModule mod_deflate.c>
|
|
# Сжимать HTML, CSS, JavaScript, Text, XML и шрифты
|
|
AddOutputFilterByType DEFLATE application/javascript
|
|
AddOutputFilterByType DEFLATE application/rss+xml
|
|
AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
|
|
AddOutputFilterByType DEFLATE application/x-font
|
|
AddOutputFilterByType DEFLATE application/x-font-opentype
|
|
AddOutputFilterByType DEFLATE application/x-font-otf
|
|
AddOutputFilterByType DEFLATE application/x-font-truetype
|
|
AddOutputFilterByType DEFLATE application/x-font-ttf
|
|
AddOutputFilterByType DEFLATE application/x-javascript
|
|
AddOutputFilterByType DEFLATE application/xhtml+xml
|
|
AddOutputFilterByType DEFLATE application/xml
|
|
AddOutputFilterByType DEFLATE font/opentype
|
|
AddOutputFilterByType DEFLATE font/otf
|
|
AddOutputFilterByType DEFLATE font/ttf
|
|
AddOutputFilterByType DEFLATE image/svg+xml
|
|
AddOutputFilterByType DEFLATE image/x-icon
|
|
AddOutputFilterByType DEFLATE text/css
|
|
AddOutputFilterByType DEFLATE text/html
|
|
AddOutputFilterByType DEFLATE text/javascript
|
|
AddOutputFilterByType DEFLATE text/plain
|
|
AddOutputFilterByType DEFLATE text/xml
|
|
</IfModule>
|
|
|
|
# Кеширование статических файлов
|
|
<IfModule mod_expires.c>
|
|
ExpiresActive on
|
|
|
|
# Изображения
|
|
ExpiresByType image/jpg "access plus 1 year"
|
|
ExpiresByType image/jpeg "access plus 1 year"
|
|
ExpiresByType image/gif "access plus 1 year"
|
|
ExpiresByType image/png "access plus 1 year"
|
|
ExpiresByType image/svg+xml "access plus 1 year"
|
|
ExpiresByType image/webp "access plus 1 year"
|
|
ExpiresByType image/x-icon "access plus 1 year"
|
|
|
|
# CSS и JavaScript
|
|
ExpiresByType text/css "access plus 1 year"
|
|
ExpiresByType application/javascript "access plus 1 year"
|
|
ExpiresByType text/javascript "access plus 1 year"
|
|
|
|
# Шрифты
|
|
ExpiresByType font/ttf "access plus 1 year"
|
|
ExpiresByType font/otf "access plus 1 year"
|
|
ExpiresByType font/woff "access plus 1 year"
|
|
ExpiresByType font/woff2 "access plus 1 year"
|
|
ExpiresByType application/font-woff "access plus 1 year"
|
|
|
|
# HTML
|
|
ExpiresByType text/html "access plus 1 hour"
|
|
</IfModule>
|
|
|
|
# Заголовки для кеширования
|
|
<IfModule mod_headers.c>
|
|
# Cache static files
|
|
<FilesMatch "\.(css|js|png|jpg|jpeg|gif|svg|webp|woff|woff2|ttf|otf)$">
|
|
Header set Cache-Control "max-age=31536000, public"
|
|
</FilesMatch>
|
|
|
|
# Don't cache HTML
|
|
<FilesMatch "\.(html|htm)$">
|
|
Header set Cache-Control "max-age=3600, public"
|
|
</FilesMatch>
|
|
|
|
# Security headers
|
|
Header always set X-Frame-Options SAMEORIGIN
|
|
Header always set X-Content-Type-Options nosniff
|
|
Header always set X-XSS-Protection "1; mode=block"
|
|
Header always set Referrer-Policy "strict-origin-when-cross-origin"
|
|
</IfModule>
|
|
|
|
# Защита от прямого доступа к файлам
|
|
<Files ".htaccess">
|
|
Order Allow,Deny
|
|
Deny from all
|
|
</Files>
|
|
|
|
# MIME типы
|
|
<IfModule mod_mime.c>
|
|
AddType application/javascript .js
|
|
AddType text/css .css
|
|
AddType image/svg+xml .svg
|
|
AddType font/woff .woff
|
|
AddType font/woff2 .woff2
|
|
</IfModule>
|
|
|
|
# Защита от hotlinking изображений (опционально)
|
|
# RewriteCond %{HTTP_REFERER} !^$
|
|
# RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain.com [NC]
|
|
# RewriteRule \.(jpg|jpeg|png|gif|svg)$ - [NC,F,L]
|
|
|
|
# Ошибка 404 - редирект на главную
|
|
ErrorDocument 404 /index.html
|
|
|
|
# Убрать .html из URL (опционально)
|
|
# RewriteCond %{REQUEST_FILENAME} !-d
|
|
# RewriteCond %{REQUEST_FILENAME} !-f
|
|
# RewriteRule ^([^\.]+)$ $1.html [NC,L]
|