Файл htaccess предназначен для изменения конфигураций web-сервера, используемого для хранения сайта. Изменение настроек этого сервера позволит внести корректировки в работу ресурса. Файл htaccess расположен в корне сайта и его настройки распространяются на все подкаталоги. Возможна ситуация, когда в другом каталоге уже есть этот файл. В такой ситуации действие данного файла будет распространяться исключительно на свой каталог и его подкаталоги.
Важно!
Настройка htaccess может привести к нарушению работы всего сайта. Более того, изменения, внесенные в этот файл, могут не иметь заметных последствий, однако они могут поспособствовать ухудшению позиций сайта в поисковиках (в некоторых случаях возможна полная потеря позиций). Следовательно, перед внесением изменений в этот файл рекомендуется сохранить рабочую копию.
Благодаря этому пользователь сможет быстро вернуть предыдущие конфигурации сайта.
Рекомендации веб-мастерам по настройке .htaccess
- Переадресация страниц в файле должна направляться сверх вниз (от частных к глобальным).
- Веб-мастерам следует предотвращать возможность возникновения нескольких последовательных редиректов. В процессе настройки правил следует сделать так, чтобы в случае появления редиректа перенаправление пользователя или робота-поисковика происходило лишь однажды. Это очень важное требование, так как любая переадресация влечет за собой увеличение времени отдачи страницы. Соответственно, увеличивается нагрузка на веб-сервера. К тому же дополнительная переадресация – это еще и нечеткие команды для роботов-поисковиков.
- Веб-мастер должен знать о том, что большинство современных браузеров кэширует (сохраняет в памяти редиректы htaccess). Поэтому переадресация должна быть дополнительно проверена. Для этого рекомендуется использовать сервис на сайте http://www.bertal.ru.
Любой веб-мастер прекрасно знает положительное отношение поисковиков к сайтам с сертификатами безопасности SSL. Поэтому для улучшения позиций сайта в поисковых системах рекомендуется настроить редирект в .htaccess с http на https.
#С HTTP на HTTPS Options +FollowSymLinks RewriteEngine On RewriteCond %{SERVER_PORT} ^80$ [OR] RewriteCond %{HTTP} =on RewriteRule ^(.*)$ https://адрес сайта.ru/$1 [R=301,L]
Смена домена требует перенаправления пользователей на новый адрес. С этой целью применяется 301 редирект. Он необходим для оповещения поисковиков о том, что данное перенаправление будет постоянным. Кроме того, 301 редирект сообщает о необходимости сохранить значимость сайта в поисковиках по новому домену.
Redirect 301 /old-page.html http://new-domain.ru/new-page.html
Где расположен htaccess?
Файл htaccess в WordPress и любой другой системе управления сайтом всегда находится в корне сайта. Некоторые CMS могут содержать файл htaccess.txt. Но такой файл не воспринимается сервером.
Поэтому он нуждается в переименовании в .htaccess. Это можно сделать как ПК пользователя, так и непосредственно на сервере.
Для редактирования файла можно использовать любой текстовик. Но стоит учитывать возможность возникновения проблем с кодировкой. Поэтому оптимальным вариантом считается Notepad++.
Проверка работы .htaccess
Для проверки работы .htaccess в нем нужно написать любое слово в первой строчке файла. Далее необходимо сохранить файл и разместить обновленную версию на сервере. Если сайт продолжит функционировать, то .htaccess неактивен. Если в браузере возникнет ошибка, это будет означать, что .htaccess включен и его работа поддерживает сервером. Для того чтобы закончить эксперимент с проверкой и вернуть сайт в рабочее состояние, необходимо удалить то самое слово, указанное в первой строчке.
Также публикуем список наиболее востребованных команд, которые традиционно прописываются в .htaccessРедирект в .htaccess со старого домена на новый
#Со старого домена на новый RewriteEngine on RewriteCond %{HTTP_HOST} ^www\.staryy-sait\.ru$ [NC] RewriteRule ^(.*)$ http://novyy-sait.ru/$1 [L,R=301] RewriteCond %{HTTP_HOST} ^staryy-sait\.ru$ [NC] RewriteRule ^(.*)$ http://novyy-sait.ru/$1 [L,R=301]
Редирект в .htaccess с адреса с WWW на адрес без WWW
Options +FollowSymLinks RewriteEngine On RewriteCond %{HTTP_HOST} ^https://www.адрес сайта\.ru$ [NC] RewriteRule ^(.*)$ https://адрес сайта.ru/$1 [R=301,L]
Редирект в .htaccess на адрес сайта без слэша в конце
RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} ^(.+)/$ RewriteRule ^(.+)/$ /$1 [R=301,L]
Редирект в .htaccess со старой страницы на новую
RewriteEngine On RewriteRule ^(.*)url.html$ http://vash-sait.ru/new-url.html [R=301,L]
Редирект в .htaccess — перевод из верхнего регистра символов в URL в нижний
Эту запись следует провести в несколько этапов. Последовательно публикуем каждую команду, которую необходимо записать в файл.
RewriteEngine On RewriteBase /
RewriteRule ![A-Z] - [S=28]
RewriteRule ^([^A]*)A(.*)$ $1a$2 RewriteRule ^([^B]*)B(.*)$ $1b$2 RewriteRule ^([^C]*)C(.*)$ $1c$2 RewriteRule ^([^D]*)D(.*)$ $1d$2 RewriteRule ^([^E]*)E(.*)$ $1e$2 RewriteRule ^([^F]*)F(.*)$ $1f$2 RewriteRule ^([^G]*)G(.*)$ $1g$2 RewriteRule ^([^H]*)H(.*)$ $1h$2 RewriteRule ^([^I]*)I(.*)$ $1i$2 RewriteRule ^([^J]*)J(.*)$ $1j$2 RewriteRule ^([^K]*)K(.*)$ $1k$2 RewriteRule ^([^L]*)L(.*)$ $1l$2 RewriteRule ^([^M]*)M(.*)$ $1m$2 RewriteRule ^([^N]*)N(.*)$ $1n$2 RewriteRule ^([^O]*)O(.*)$ $1o$2 RewriteRule ^([^P]*)P(.*)$ $1p$2 RewriteRule ^([^Q]*)Q(.*)$ $1q$2 RewriteRule ^([^R]*)R(.*)$ $1r$2 RewriteRule ^([^S]*)S(.*)$ $1s$2 RewriteRule ^([^T]*)T(.*)$ $1t$2 RewriteRule ^([^U]*)U(.*)$ $1u$2 RewriteRule ^([^V]*)V(.*)$ $1v$2 RewriteRule ^([^W]*)W(.*)$ $1w$2 RewriteRule ^([^X]*)X(.*)$ $1x$2 RewriteRule ^([^Y]*)Y(.*)$ $1y$2 RewriteRule ^([^Z]*)Z(.*)$ $1z$2Теги: