17 Полезных советов .htaccess

0 1

Приветствую Вас снова на своем блоге, дорогие мои подписчики и читатели!

Как уже говорил, мы продолжаем серию статей по программированию. Сегодня статья будет не впрямом смысле о программировании, а скорее немного о безопасности. Сейчас я вам расскажу о таком интересном файле как .htaccess.

Некоторые прогеры не могут представить себе всю мощь .htaccess. Ниже рассмотрено 17 примеров применения .htaccess, которые могут принести существенную пользу вашему сайту.

17 Полезных советов .htaccess

1. Установить часовой пояс

Иногда, когда вы используете date или mktime в php. Вы можете получить смешное сообщение о часовом поясе. Один из способов решить эту проблему прописать часовой пояс для вашего сервера в .htaccess. Список поддерживаемых часовых поясов можно посмотреть здесь.

Ко мне часто поступают вопросы про хостинг, которым я пользуюсь и поэтому решил указать хостинг в статье https://sprinthost.ru. Вы можете попробовать попользоваться хостингом 30 дней бесплатно. Чтобы понять, как будет работать Ваш сайт на этом хостинге просто перенести свой сайт (в этом поможет поддержка хостинга бесплатно) и и таким образом сможете понять подходит хостинг Вам или нет. На этом хостинге находятся сайты с 20 000 тысяч посещаемость и сайты чувствуют себя отлично. Рекомендую! Да, если делать оплату на 1 год то получаете скидку 25%. И что мне нравится — тех. поддержка всегда помогает в технических вопросах, за что им спасибо. Как Вы понимаете не всегда проходит всё гладко и нет желания, чтобы сайт не был доступен тем самым страдал трафик и доход. SetEnv TZ Australia/Melbourne

2. SEO дружественный 301 редирект

Почему SEO дружественный? Современные поисковые системы обладают возможностью определять 301 редирект и обновлять запись.

Redirect 301 http://www.queness.com/home http://www.queness.com/

3. Пропуск диалога для скачивания

Обычно когда вы пытаетесь скачать у вас открывается окно спрашивающее хотите ли вы открыть файл или сохранить и тд. Чтобы избежать этого окна можете использовать следующий код в .htaccess

AddType application/octet-stream .pdf AddType application/octet-stream .zip AddType application/octet-stream .mov

4. Убрать www

По правилам SEO, должна быть всего одна ссылка указывающая на ваш сайт, либо с www. либо без. Чтобы убрать www в начале адреса, можно воспользоваться следующим кодом

RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} ^www.queness.com [NC] RewriteRule ^(.*)$ http://queness.com/$1 [L,R=301]

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

Можно создавать страницы для ошибок с любым кодом

ErrorDocument 401 /error/401.php ErrorDocument 403 /error/403.php ErrorDocument 404 /error/404.php ErrorDocument 500 /error/500.php

6. Сжатие файлов

Увеличьте скорость загрузки вашего сайта благодаря сжатию файлов

# compress text, html, javascript, css, xml: AddOutputFilterByType DEFLATE text/plain AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE text/xml AddOutputFilterByType DEFLATE text/css AddOutputFilterByType DEFLATE application/xml AddOutputFilterByType DEFLATE application/xhtml+xml AddOutputFilterByType DEFLATE application/rss+xml AddOutputFilterByType DEFLATE application/javascript AddOutputFilterByType DEFLATE application/x-javascript

7. Кэширование файлов

Кэширование фалов – еще один популярный способ увеличения скорости загрузки страницы

Header set Cache-Control «max-age=2592000»

8. Отключение кеширования для файлов определенного типа

# отключение кеширования для скриптов и других динамических файлов Header unset Cache-Control

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

17 Полезных советов .htaccess

Следующие куски htaccess кода способствуют увеличению уровня безопасности сайта.

1. Защита от Хотлинкинга

Если вам не нравится когда другие сайты ссылаются на файлы расположенные на вашем сайте картинки и т.д., тем самым повышаю нагрузку на ваш сервер. Можете использовать следующий код для предотвращения этого.

RewriteBase / RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http://(www.)?queness.com/.*$ [NC] RewriteRule .(gif|jpg|swf|flv|png)$ /feed/ [R=302,L]

2. Предотвращение взломов

Если хотите увеличить безопасность вашего сайта, можете вставить эти несколько строк кода в ваш .htaccess файл это позволит предотвратить взломы по нескольким основным моделям взлома через URL.

RewriteEngine On # proc/self/environ? no way! RewriteCond %{QUERY_STRING} proc/self/environ [OR] # Block out any script trying to set a mosConfig value through the URL RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|%3D) [OR] # Block out any script trying to base64_encode crap to send via URL RewriteCond %{QUERY_STRING} base64_encode.*(.*) [OR] # Block out any script that includes a < script> tag in URL RewriteCond %{QUERY_STRING} (|%3E) [NC,OR] # Block out any script trying to set a PHP GLOBALS variable via URL RewriteCond %{QUERY_STRING} GLOBALS(=|[|%[0-9A-Z]{0,2}) [OR] # Block out any script trying to modify a _REQUEST variable via URL RewriteCond %{QUERY_STRING} _REQUEST(=|[|%[0-9A-Z]{0,2}) # Send all blocked request to homepage with 403 Forbidden error! RewriteRule ^(.*)$ index.php [F,L]

3. Закрыть доступ к вашему htaccess файлу

Следующий код позволит закрыть доступ к .htaccess файлу. Также можете закрыть доступ к любым другим файлам, даже файла по какой то маске

# secure htaccess file order allow,deny deny from all # prevent viewing of a specific file order allow,deny deny from all # multiple file types Order Allow,Deny Deny from all

4. Переименовать .htaccess файл

Вы можете переименовать htaccess файл для закрытия доступа к нему

AccessFileName htacc.ess

5. Отключение возможности просмотра содержимого папок на сервере

Избежание сервером выдачи содержимого папки или наоборот

# disable directory browsing Options All -Indexes # enable directory browsing Options All +Indexes

6. Изменение индексного файла

Можно поменять название индексного файла по умолчанию index.html index.php или index.htm на что нибудь другое

DirectoryIndex business.html

7. Блокировка нежеланных посетителей с определенного домена

# block visitors referred from indicated domains RewriteEngine on RewriteCond %{HTTP_REFERER} scumbag.com [NC,OR] RewriteCond %{HTTP_REFERER} wormhole.com [NC,OR] RewriteRule .* — [F]

8. Блокировка посетителей по User-Agent’у в заголовках

Этот метод позволит заблокировать некоторых ботов посещающих ваш сайт

# block visitors referred from indicated domains SetEnvIfNoCase ^User-Agent$ .*(craftbot|download|extract|stripper|sucker|ninja|clshttp|webspider|leacher|collector|grabber|webpictures) HTTP_SAFE_BADBOT SetEnvIfNoCase ^User-Agent$ .*(libwww-perl|aesop_com_spiderman) HTTP_SAFE_BADBOT Deny from env=HTTP_SAFE_BADBOT

9. Отключить выполнение скриптов в определенной папке

# secure directory by disabling script execution AddHandler cgi-script .php .pl .py .jsp .asp .htm .shtml .sh .cgi Options -ExecCGI

Вот такая получилась статья. Думаю, она также будет полезна не только начинающим программистам.

На этом буду с Вами прощаться сегодня — до новых встреч!

И как всегда моя подпись — с Вами был ваш Юрич!

Источник

Оставьте ответ

Ваш электронный адрес не будет опубликован.