Настройки веб-сервера.
Это обыкновенный текстовый файл, который нужно создать в стандартной программе «Блокнот» и разместить в корневом каталоге сайта.
В подавляющем большинстве случаев .htaccess уже будет лежать в корневом каталоге, так что можно просто редактировать его в «Блокноте» или встроенном редакторе FTP-клиента.
Что писать в .htaccess
В этом настроечном файле можно писать как правила работы для ядра Apache, так и для подключаемых модулей, из которых для нас интерес представляет mod_rewrite. (Во времена оны нужно было убедиться, что хостер его установил. Но в 2011-м году крайне сложно найти хостинг-провайдера, не подключающего этот модуль Apache, так что беспокоиться не стоит).
Несмотря на упрощенность (все ненужное простому оптимизатору таинство Apache сконцентрировано в другом файле настроек – httpd.conf), полные перечени функций и базового синтаксиса доступных настроек [] и, в частности, настроек mod_rewrite [] – немаленькие документы. Веб-разработчик может получить абсолютно полный контроль над сервером, но, к счастью, поисковая оптимизация этого не требует. Вполне достаточно знать основные команды!
Комментарий в .htaccess предваряется символом # – строку, перед которой стоит решетка, веб-сервер обрабатывать не будет. Комментируйте даже такой небольшой код, как правила для Apache, и вы даже через год или два сможете легко вспомнить, зачем нужна та или иная настройка.
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^yoursite.ru
RewriteRule (.*) [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.html\ HTTP/
RewriteRule ^index\.html$ [R=301,L]
Все страницы-дубли будут склеены редиректом с кодом 301 («постоянное перемещение») с главной страницей – . Перед этим, конечно, нужно проверить, как «Яндекс» проиндексировал сайт – с www или без. Желательно также назначить совпадающее основное зеркало в файле robots.txt.
ErrorDocument 404
Аналогично можно указать страницы и для других ошибок.
Redirect 301 /old.html
Для группового редиректа нужно использовать RedirectMatch – эта команда маски URL и имен файлов.
AddType application/octet-stream .rar .doc .mov .avi .pdf .xls .mp4
Можно добавить и другие расширения.
Для их корректной работы в .htaccess должна быть строчка RewriteEngine On (включение mod_rewrite). Настройка же ЧПУ с помощью «голого» .htaccess – дело достаточно кропотливое. Например, чтобы превратить URL типа в более понятный , пишем вот такие строчки (RewriteEngine On нужно писать в том случае, если раньше в .htaccess mod_rewrite еще не был подключен):
RewriteEngine on
RewriteRule samsung/(.*)/(.*)/$ /script.php?$1=$2
Понятно, что для успешной настройки ЧПУ таким способом нужно освоить весь синтаксис .htaccess и немало потрудиться. Гораздо проще, повторимся, пользоваться средствами CMS.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ /$1/ [R=301,L]
Со страниц без слэша будет установлен редирект на «слэшевые».
Все приведенные выше примеры не стоит бездумно копировать в .htaccess вашего сайта. Разберитесь, есть ли у вашего сайта описанная проблема, можно ли ее решить с помощью приведенного выражения, а потом уже правьте код. Обязательно сохраните копию файла .htaccess до того, как начнете вносить изменения!
Важная рекомендация: поищите в интернете оптимальные настройки .htaccess для вашей системы управления контентом. У всех CMS есть свои особенности – например, это специфические URL’ы страниц-дублей, с которых нужно ставить редирект (и закрывать их от индексации). Для большинства популярных CMS можно найти уже готовые правила для .htaccess.
4 комментария записи Основа основ – файл .htaccess
adminpab
Апрель 13th, 2011 at 14:56
Сам недавно об этом писал, у вас получилось лучше, Ника.
kr3ct
Апрель 13th, 2011 at 15:57
Подобных статей море, но написано доступным языком. +5
gglmgl
Апрель 26th, 2011 at 20:57
gglmgl написал(а)
Да подобных статей действительно много, мне кажется лучше не менять направление блога в техническую сторону, такой инфы полно в сети. А вот про коммерческую сторону доступно никто не расскажет, это первый ресурс на котором я нашел доступное объяснение о заработке в сети, хотя и сам уже до этого допер
но все равно читал с удовольствием. Спасибо
Nika
Май 8th, 2011 at 00:36
gglmgl написал(а)
Пишу обо всем, по немногу и под настроение, в свободное время и при желании… Поэтому как есть, но думаю блог не утратит свою актуальность, если временами из меня прет какая то техническая инфа.