Полезные вставки кода для файла .htaccess
Как известно файла .htaccess, который обладает большими возможностями, является неотъемлемой частью функционального сайта. Файл .htaccess является сердцем веб сервера, который работает под управлением Apache. В сегодняшнем уроке мы рассмотрим весьма полезные вставки кода, для расширения функциональности. Чтобы использовать вырезки кода, их надо просто скопировать в файл .htaccess, который располагается в корневом каталоге вашего сервера Apache..
Необходимо напомнить, что перед проведением экспериментов настоятельно рекомендуется сделать резервную копию данного файла в избежании глюков, и прочих неполадок сайта.
Напомним, что ранее мы публиковали схожую статью , в которой приводился еще один перечень расширений для файла .htaccess. И так, рассмотрим сегодняшний перечень, возможно Вы уже встречали похожие функции, но не стоит пренебрегать знаниями.
1. Записываем ошибки PHP в журнал:
Вместо вывода ошибок PHP на страницах вашего сайта (что дает информацию потенциальным хакерам…) можно записывать их в журнал (файл .log
), скрывая от посетителей.
1 2 3 4 5 6 7 |
# отключаем вывод ошибок пользователям php_flag display_startup_errors off php_flag display_errors off php_flag html_errors off # заносим ошибки в журнал php_flag log_errors on php_value error_log /location/to/php_error.log |
2. Конфигурируем сайт для видео HTML5:
HTML5 привнес много новшеств в мир веб разработки. Возможность проигрывать видео без использования FLASH является одной из лучших особенностей HTML5. Хотя нужно правильно сконфигурировать сервер для корректной работы с последними стандартами видео HTML5.
1 2 3 4 5 6 7 8 |
RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !=/favicon.ico AddType video/ogg .ogv AddType video/ogg .ogg AddType video/mp4 .mp4 AddType video/webm .webm AddType application/x-shockwave-flash swf |
3. Отсекаем спам:
Страдаете от спама на вашем блоге WordPress? Конечно, плагин Akismet может оказать существенную помощь, но и файл .htaccess
не останется в стороне от борьбы с заразой. Данный код предотвращает непосредственный доступ спам ботов к файлу wp-comments-post.php
, который формирует комментарии на блоге.
1 2 3 4 5 6 7 8 9 |
# Заменяем yourdomainname на имя вашего домена <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{REQUEST_METHOD} POST RewriteCond %{REQUEST_URI} .wp-comments-post\.php* RewriteCond %{HTTP_REFERER} !.*yourdomainname.* [OR] RewriteCond %{HTTP_USER_AGENT} ^$ RewriteRule (.*) ^http://%{REMOTE_ADDR}/$ [R=301,L] </IfModule> |
4. Ускоряем сайт с помощью кэширования .htaccess:
Используя кэширование .htaccess можно существенно увеличить скорость сайта.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
# 1 ГОД <FilesMatch "\.(ico|pdf|flv)$"> Header set Cache-Control "max-age=29030400, public" </FilesMatch> # 1 НЕДЕЛЯ <FilesMatch "\.(jpg|jpeg|png|gif|swf)$"> Header set Cache-Control "max-age=604800, public" </FilesMatch> # 2 ДНЯ <FilesMatch "\.(xml|txt|css|js)$"> Header set Cache-Control "max-age=172800, proxy-revalidate" </FilesMatch> # 1 МИНУТА <FilesMatch "\.(html|htm|php)$"> Header set Cache-Control "max-age=60, private, proxy-revalidate" </FilesMatch> |
5. Междоменное использование шрифтов для FireFox:
При использовании встроенных шрифтов Firefox не позволяет брать их с внешних сайтов. Следующий код для файла .htaccess
позволит обойти данное ограничение.
1 2 3 4 5 6 |
<FilesMatch "\.(ttf|otf|eot|woff)$"> <IfModule mod_headers.c> #Замените yourdomain.com на адрес вашего блога Header set Access-Control-Allow-Origin "http://yourdomain.com" </IfModule> </FilesMatch> |
6. Принудительная загрузка файлов определенного типа:
По некоторым причинам вам может потребоваться принудительная загрузка файлов определенных типов (например, MP3 или XLS). Нижеприведенный код будет предотвращать чтение таких файлов браузером и принудительно запускать загрузку.
1 2 3 4 5 6 7 8 |
<Files *.xls> ForceType application/octet-stream Header set Content-Disposition attachment </Files> <Files *.eps> ForceType application/octet-stream Header set Content-Disposition attachment </Files> |
7. Перенаправляем мобильные устройства:
Если ваш сайт не использует адаптивный дизайн, то будет очень полезно перенаправить мобильные устройства на специальную версию сайта.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
RewriteEngine On RewriteCond %{REQUEST_URI} !^/m/.*$ RewriteCond %{HTTP_ACCEPT} "text/vnd.wap.wml|application/vnd.wap.xhtml+xml" [NC,OR] RewriteCond %{HTTP_USER_AGENT} "acs|alav|alca|amoi|audi|aste|avan|benq|bird|blac|blaz|brew|cell|cldc|cmd-" [NC,OR] RewriteCond %{HTTP_USER_AGENT} "dang|doco|eric|hipt|inno|ipaq|java|jigs|kddi|keji|leno|lg-c|lg-d|lg-g|lge-" [NC,OR] RewriteCond %{HTTP_USER_AGENT} "maui|maxo|midp|mits|mmef|mobi|mot-|moto|mwbp|nec-|newt|noki|opwv" [NC,OR] RewriteCond %{HTTP_USER_AGENT} "palm|pana|pant|pdxg|phil|play|pluc|port|prox|qtek|qwap|sage|sams|sany" [NC,OR] RewriteCond %{HTTP_USER_AGENT} "sch-|sec-|send|seri|sgh-|shar|sie-|siem|smal|smar|sony|sph-|symb|t-mo" [NC,OR] RewriteCond %{HTTP_USER_AGENT} "teli|tim-|tosh|tsm-|upg1|upsi|vk-v|voda|w3cs|wap-|wapa|wapi" [NC,OR] RewriteCond %{HTTP_USER_AGENT} "wapp|wapr|webc|winw|winw|xda|xda-" [NC,OR] RewriteCond %{HTTP_USER_AGENT} "up.browser|up.link|windowssce|iemobile|mini|mmp" [NC,OR] RewriteCond %{HTTP_USER_AGENT} "symbian|midp|wap|phone|pocket|mobile|pda|psp" [NC] #------------- Строка ниже исключает iPad RewriteCond %{HTTP_USER_AGENT} !^.*iPad.*$ #------------- RewriteCond %{HTTP_USER_AGENT} !macintosh [NC] RewriteRule ^(.*)$ /m/ [L,R=302] |
8. Предотвращаем хотлинк ресурсов сайта:
Хотлинк (использование изображений вашего сайта другими сайтами в сети) является весьма популярной практикой, которая прожигает впустую трафик вашего сервера. Следующий код будет перенаправлять все хотлинк запросы к изображениям вашего сайта на определенную картинку, адрес которой задается в строке 6.
1 2 3 4 5 6 |
RewriteEngine On #Замените ?mysite\.com/ на адрес вашего блога RewriteCond %{HTTP_REFERER} !^http://(.+\.)?mysite\.com/ [NC] RewriteCond %{HTTP_REFERER} !^$ #Замените /images/nohotlink.jpg на ваше изображение с запрещением хотлинка RewriteRule .*\.(jpe?g|gif|bmp|png)$ /images/nohotlink.jpg [L] |
9. Разрешить доступ к wp-admin только с Вашего IP:
Если у Вас не динамический IP, то есть постоянный всегда. То можно разрешить вход в админку WordPress только с одного IP. Делается это вот так:
1 2 3 4 5 6 7 8 9 |
/dev/null /dev/null "Example Access Control" Basic <GET> deny,allow all from 192.168.0.1 </LIMIT> |
Мы будем продолжать выкладывать интересные вставки кода. Материал взят из зарубежного источника. И представлен исключительно в ознакомительных целях.
Читайте также:
Опубликовал Cooper 19.03.2011 в 04:18, в категории Интересно. Вы можете следить за комментариями через RSS 2.0. Вы можете перейти в конец записи и оставить комментарий. Пинги запрещены. |