-
Notifications
You must be signed in to change notification settings - Fork 0
/
.htaccess
76 lines (44 loc) · 2.07 KB
/
.htaccess
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
DirectoryIndex index.php index.html
AddDefaultCharset UTF-8
AddCharset utf-8 .php .html .css .js .xml .json .rss
ServerSignature Off
Options -Indexes
php_flag register_globals off
php_flag magic_quotes_gpc off
php_flag magic_quotes_runtime Off
<IfModule mod_rewrite.c>
RewriteEngine On
# У домена убираем префикс "www.". (редирект с www.example.com на example.com)
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
# Обработка конечных слешей, что бы при запросе "/news/" перенаправлял на "/news". Это надо для SEO-шников
RewriteCond %{REQUEST_URI} ^(.*)/$
RewriteRule ^(.*)/$ http://%{HTTP_HOST}%1 [R=permanent,L]
# Все запросы к несуществующим файлам перенаправляет в index.php
RewriteCond %{REQUEST_URI} !\.(jpg|jpeg|png|gif|svg|swf|flv|css|js|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|cur|ico|ppt|txt|tar|mid|midi|wav|bmp|rtf|woff|ttf|eot|mp4|ogg|webm)$ [NC] # кроме таких запросов
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.+)$ index.php?REQUEST_URI=$1 [L,QSA]
# Защита системных файлов и директорий
RewriteRule ^(.*/)?\.hg - [F]
</IfModule>
# gzip сжатие.
<IfModule mod_deflate.c>
# html, txt, css, js, json, xml, htc:
AddOutputFilterByType DEFLATE text/html text/plain text/css application/json
AddOutputFilterByType DEFLATE text/javascript application/javascript application/x-javascript
AddOutputFilterByType DEFLATE text/xml application/xml text/x-component
# веб-шрифты и svg:
<FilesMatch "\.(ttf|otf|eot|svg)$" >
SetOutputFilter DEFLATE
</FilesMatch>
</IfModule>
<IfModule mod_expires.c>
<FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf|ttf|otf|eot|svg|woff)$">
Header set Cache-Control "public"
Header set Expires "Fri, 17 May 2030 20:00:00 GMT"
FileETag None
</FilesMatch>
</IfModule>