.htaccess — это конфигурационный файл, позволяющий задать различные настройки работы вебсервера. Название файла начинается с точки. В дистрибутиве WordPress этого файла нет, однако он создается автоматически, если вы меняете структуру адресов страниц сайта на ЧПУ (ссылки, удобные для восприятия человека).
Структура адресов (ссылок) меняется в меню «Настройки — Постоянные ссылки». По умолчанию указан формат ?p=123. Такой формат ссылок может работать без дополнительных настроек файла htaccess. Однако если вы поменяете структуру на «Название записи» — sample-post/ (то, что и называется ЧПУ), то для поддержки работы таких ссылок WP должен автоматически создать htaccess со следующим кодом:
1 2 3 4 5 6 7 8 9 10 |
# 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> # END WordPress |
Приведенный выше код — это пример наиболее стандартного и правильного htaccess для Вордпресс. Находится он в корневой папке сайта.
Если же у вас по каким то причинам этот файле не появился, вы можете создать его самостоятельно, либо скачать по ссылке (файл в архиве zip)
В общем то можно ограничиться этим файлом. Но вы можете настроить дополнительные инструкции, которые улучшат ваш сайт в глазах поисковых систем, усилят защиту файлов сайта и т.д.
Под улучшением для поисковых систем я имел ввиду, что в htaccess можно сделать редирект адресов страниц с www на адреса без него. Дело в том, что адрес сайта может быть записан с www, то есть в виде http://www.ваш_сайт, а также без него, то есть http://ваш_сайт. Желательно склеить эти два представления, чтобы сосредоточить ссылочный вес на одном из них. Лучше всего использовать в качестве основного вид http://ваш_сайт, а с www сделать 301 редирект (301 редирект — это перенаправление с одного адреса на другой). Возможно, постепенно эта рекомендация станет устаревшей, и поисковые системы станут сами делать такую склейку.
Для этого в файл htaccess нужно добавить следующий код.
1 2 3 4 |
Options +FollowSymLinks RewriteEngine on RewriteCond %{HTTP_HOST} ^www\.(.*) [NC] RewriteRule ^(.*)$ http://%1/$1 [R=301,L] |
Статья к теме вообще ни какого отношения не имеет. Указан стандартный код, который и без этой статьи стоит автоматически(
Хотя бы директивы основные до писали типа: закрыть config
Андрей, ну как сказать. Встречаются сайты, где по разным причинам отсутствует htaccess или в нем другое содержание. Для этих случаев приведенный здесь пример будет полезен. А закрывать config и прочее лучше с помощью других инструментов.
Админ, подскажите пожалуйста.
если адрес сайта начинается с https а не с http, что указывать в настройках редиректа?
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
Полезная статья, спасибо вам!
У меня (в отличии от оригинального файла Htaccess) есть еще 2 такие сточки:
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]
Подскажите, они нужны? Или это лишнее что-то. Возможно, меня взломали? Спасибо.
Настроить файл htaccess просто, для платформы WordPress есть инструменты. Используем правильные конфигурации сервера для перенаправления, сжатия и кэша.