Как настроить .htaccess для WordPress
Любой новичок при конфигурации нового сайта сталкивается с проблемой настройки очень важного файла .htaccess. В нем находятся настройки для web-сервера Apache на котором и держится хостинг. Для WordPress он отвечает за URL структуру на блоге и постоянные ссылки. Если данный файл отсутствует или неработоспособен, то становится невозможным переход по ссылкам постов в блоге, и в результате при этом передается код 404 «Страница не найдена». Здесь я опишу основные вещи которые необходимо сделать с файлом .htaccess.
Эти приемы вы можете использовать на любых сайтах, не обязательно на WordPress, чтобы сделать работу с ресурсом максимально более удобной и эффективной для посетителя и поисковика.
Для начала создайте сам файл .htaccess в корне вашего сайта. Удобно создавать файлы .htaccess с помощью встроенного редактора в оболочках Far, Total Commander или в редакторе Блокнот.
Затем, через FTP-доступ, перепишите файл .htaccess на сайт прямо в корень. Необходимо помнить что действие этого файла распространяется не только на ту директорию, где лежит файл, но и на все поддиректории, лежащие уровнем ниже.
* yoursitename.ru в этих примерах заменяйте на адрес вашего домена
1. Установка главной страницы по умолчанию
DirectoryIndex pagename.html
2. Перенаправление посетителей при обновлении сайта.
Если вы тестируете или обновляете ваш сайт на хостинге, вы можете переправить посетителя на определенную страницу, скажем страницу где будет написано что у вас идут профилактические работы, для этого в файле .htaccess пропишите следующее строки.
order deny,allow deny from all allow from 111.111.111.111 ErrorDocument 403 /page.html allow from all
Где 111.111.111.111 ваш IP адрес, page.html замените на ту страницу которую будут видеть пользователи зашедшие на сайт во время профилактики.
3. Убрать из адреса category
RewriteRule ^category/(.+)$ http://yoursitename.ru/$1 [R=301,L]
4. Создание красивых URL.
Из приведенных ниже двух ссылок первая выглядит намного привлекательнее.
http://yoursite.com/about http://yoursite.com/pages/about.html
5. Задаем страницу с ошибкой 404.
Когда пользователь обращаются к страницу вашего сайта которой не существует, то ему показывается ошибка 404. Если вы хотите вывести определенную страницу, то в файле .htaccess необходимо прописать следующий код:
ErrorDocument 404 /404.html
6. Определим страницы ошибок
ErrorDocument 403 /403.php ErrorDocument 404 /404.php ErrorDocument 500 /500.php
7. Защита от хотлинков
Hotlinking – это когда владелец другого ресурса привязывается к одному или нескольким Вашим изображениям или мультимедийным файлам и помещает их на свою страницу. Чтобы избежать нагрузки на сервер и увеличения трафика пишем следующее:
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
#домены, которые могут ссылаться на картинки с вашего сайта
RewriteCond %{HTTP_REFERER} !^http://([ -a-z0-9]  \.)?yoursitename\.ru [NC]
#не показывать картинки при хотлинках
RewriteRule \.(gif|jpe?g|png)$ - [F,NC,L]
8. Запрет на просмотр директории
Используется при отсутствии индексного файла, если хотите запретить просмотр содержимого папки (например для папки plugins):
Options All -Indexes
Можно не редактировать .htaccess, а просто положить пустой файл index.html в корень папки
9. убрать из адреса ?p=
По умолчанию адрес страницы в свежеустановленном WordPress выглядит следующим образом: yoursitename.ru/?p=xxxx, где xxxx – id статьи. Исправим это недоразумение следующим образом.
RewriteCond %{REQUEST_URI} ^/([0-9]+)$
RewriteRule .* http://yoursitename.ru/?p=%1 [R=301,L]
10. Склеивание доменов с WWW и без него.
Редирект с адреса elmexicano.ru на www.elmexicano.ru.
Для чего это нужно? При склеивании, все входящие ссылки на разные домены (если они «зеркала», т.е. одинаковые по содержанию), а также их тИЦ – складываются (точнее объединяются). В основном полезно при учете естественных ссылок.
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !^www.yoursitename.ru$ [NC]
RewriteRule ^(.*)$ http://www.yoursitename.ru/$1 [L,R=301]
Обратный редирект
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !^yoursitename.ru$ [NC]
RewriteRule ^(.*)$ http://yoursitename.ru/$1 [L,R=301]
В интернете есть не мало сайтов, с помощью которых можно автоматически редактировать файл .htaccess. Например htaccesseditor.com
Онлайн магазин игрушек от легендарной датской компании. Порадуйте своего ребенка на новый год.



января 14, 2010 at 2:40
Ну мне нужно было только чтоб на норм страницу перенаправляло, спс!
марта 25, 2010 at 22:29
спасибо ))) нужная вещь
апреля 8, 2010 at 13:45
Спасибо. У меня вот такой вопрос вытекает:
Возьмем 10 сайтов которые имеют тиц в пределах 10-30.
На этих сайтах поставим редирект и пропишем хост на нужный сайт.
Дождемся склеивания доменов.
Как распределится тИЦ на наш главный сайт? Можно ли будет продовать статьи\ссылки с такого сайта?
И что будет при ситуации если домены эти в АГС (0 страниц в индексе).