Заметки для меня и коллег. Темы — разработка, продвижение сайтов, заработок в интернете.

Блокирование доступа в .htaccess по IP

Блокирование доступа по IP в .htaccess

Блокирование 1 шт IP-адреса

<Limit GET POST>
order allow,
deny deny from 195.168.1.1
allow from all
</Limit>

Блокирование большого количества IP-адресов

Блокируем конкретные адреса:

<Limit GET POST>
 order allow,deny
 deny from 195.168.1.1
 deny from 195.168.1.2
 deny from 195.168.1.3
 allow from all
</Limit>

Блокируем подсеть по IP — просто пишем первую часть адреса:

<Limit GET POST>
 order allow,deny
 deny from 195.168.1.1
 deny from 195.168.3.
 deny from 195.168.1.3
 allow from all
</Limit>

Разрешаем доступ только с определенных адресов

#Запрещаем доступ для всех, кроме указанных IP-адресов
ErrorDocument 403 http://www.domain.com
Order deny,allow
Deny from all
Allow from 124.34.48.165
Allow from 102.54.68.123

.htaccess — переадресация с несуществующих страниц сайта

Добавляем такую строчку в файл .htaccess

ErrorDocument 404 http://domain.com/

Запрет загрузки файла с другого сайта

site.com — ваш домен, stop.gif — изображение, которое будет показано вместо не загруженного:

Options +FollowSymlinks
#Запрещаем загрузку файлов с внешних сайтов
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?domain.com/ [nc]
RewriteRule .*.(gif|jpg|png)$ http://domain.com/stop.gif[nc]

.htaccess — пример файла для WordPress

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# Включаем кэш в браузерах посетителей нужно уточнить у хостера установлены ли модули mod_headers и mod_expires в сборке Apache
<ifModule mod_headers.c>
    # Все html и htm файлы будут храниться в кэше браузера один день
    <FilesMatch "\.(html|htm)$">
        Header set Cache-Control "max-age=43200"
    </FilesMatch>
    # Все css, javascript и текстовые файлы будут храниться в кэше браузера одну неделю
    <FilesMatch "\.(js|css|txt)$">
        Header set Cache-Control "max-age=604800"
    </FilesMatch>
    # Все флэш файлы и изображения будут храниться в кэше браузера один месяц
    <FilesMatch "\.(flv|swf|ico|gif|jpg|jpeg|png)$">
        Header set Cache-Control "max-age=2592000"
    </FilesMatch>
    # Отключаем кеширование php и других служебных файлов
    <FilesMatch "\.(pl|php|cgi|spl|scgi|fcgi)$">
        Header unset Cache-Control
    </FilesMatch>
</IfModule>
<ifModule mod_expires.c>
    ExpiresActive On
    #по умолчанию кеш в 5 секунд
    ExpiresDefault "access plus 5 seconds"
    # Включаем кэширование изображений и флэш на месяц
    ExpiresByType image/x-icon "access plus 1 month"
    ExpiresByType image/jpeg "access plus 4 weeks"
    ExpiresByType image/png "access plus 30 days"
    ExpiresByType image/gif "access plus 43829 minutes"
    ExpiresByType application/x-shockwave-flash "access plus 2592000 seconds"
    # Включаем кэширование css, javascript и текстовых файлоф на одну неделю
    ExpiresByType text/css "access plus 604800 seconds"
    ExpiresByType text/javascript "access plus 604800 seconds"
    ExpiresByType application/javascript "access plus 604800 seconds"
    ExpiresByType application/x-javascript "access plus 604800 seconds"
    # Включаем кэширование html и htm файлов на один день
    ExpiresByType text/html "access plus 43200 seconds"
    # Включаем кэширование xml файлов на десять минут
    ExpiresByType application/xhtml+xml "access plus 600 seconds"
</ifModule>
# END WordPress

Также полезное инфо

blogerator.org/page/fajl-primery-htaccess-redirekt-dostup


Комментарии к статье
Добавьте свой комментарий - оставьте след в блоге!

Вы должны войти на сайт.