Здравствуйте!
Сегодня как и обещали расказываем как настроить веб сервер.
------------------------------------------------------------------------------------------------------------------------------------------------------------ Настройки
веб-сервера
Поскольку самым распространенным веб-сервером для небольших и средних
по размеру сайтов является, безусловно, Apache, остановимся на его
основных настройках.
Обратите внимание, что веб-серверы все же бывают разные. Прежде, чем
пытаться применить код, представленный ниже, убедитесь, что ваш сайт
работает на хостинге, где установлен именно Apache.
Обязательно проверьте, какой код в .htaccess добавляет CMS вашего
сайта. Не допускайте конфликтующих выражений. В первую очередь
попробуйте добиться нужных результатов с помощью настроек CMS.
Веб-сервер
– это программа, которая запущена на компьютере (его тоже
называют
«сервером», не запутайтесь!), установленном в
дата-центре
хостинг-провайдера. Задача веб-сервера – принимать и
обрабатывать
HTTP-запросы, а также отправлять запрошенные данные (которые могут
формироваться другим программным обеспечением, установленным на сервере
– например, системой управления контентом).
Как добраться до файла с настройками Apache
Основа
основ – файл .htaccess. Это обыкновенный текстовый файл,
который нужно создать в стандартной программе
«Блокнот» и разместить в корневом каталоге сайта.
Кстати,
«корневой каталог сайта» тоже часто вызывает
вопросы у новичков.
Отвечаем: сайт лежит на сервере как обычный каталог (папка) с
подкаталогами, в которых находятся файлы. Удобнее всего работать с
каталогами и файлами сайта с помощью FTP-клиента. Имея логин и пароль
(их предоставляет хостер), можно зайти в папку, где лежит ваш сайт
–
это и есть корневой каталог. Именно в нем нужно размещать файлы
robots.txt и .htaccess.
В подавляющем большинстве случаев .htaccess уже будет лежать в корневом
каталоге, так что можно просто редактировать его в
«Блокноте» или встроенном редакторе FTP-клиента.
Что писать в .htaccess
В
этом настроечном файле можно писать как правила работы для ядра Apache,
так и для подключаемых модулей, из которых для нас интерес представляет
mod_rewrite. (Во времена оны нужно было убедиться, что хостер его
установил. Но в 2011-м году крайне сложно найти хостинг-провайдера, не
подключающего этот модуль Apache, так что беспокоиться не стоит).
Несмотря на упрощенность (все ненужное простому оптимизатору таинство
Apache сконцентрировано в другом файле настроек –
httpd.conf), полные перечени функций и базового синтаксиса доступных
настроек [http://httpd.apache.org/docs/2.2/howto/htaccess.html] и, в
частности, настроек mod_rewrite
[http://www.egoroff.spb.ru/portfolio/apache/mod_rewrite.html]
– немаленькие документы. Веб-разработчик может получить
абсолютно полный контроль над сервером, но, к счастью, поисковая
оптимизация этого не требует. Вполне достаточно знать основные команды!
Комментарий в .htaccess предваряется символом # – строку,
перед которой стоит решетка, веб-сервер обрабатывать не будет.
Комментируйте даже такой небольшой код, как правила для Apache, и вы
даже через год или два сможете легко вспомнить, зачем нужна та или иная
настройка.
Главная
страница без дублей
Обычно
код главной страницы физически расположен в файле /index.html (или
index.php – для большинства динамических сайтов), но сайт
должен открываться по любому из запросов: yoursite.ru,
yoursite.ru/index.html, www.yoursite.ru и www.yoursite.ru/index.html.
Но для поисковых систем это четыре разных URL! Если не настроить
.htaccess верно, поисковик добавит в свой индекс четыре одинаковых
страницы. Это признак некачественного сайта. Избежать этой проблемы
можно с помощью такого кода в .htaccess:
Все страницы-дубли будут склеены редиректом с кодом 301
(«постоянное перемещение») с главной страницей
– http://www.yoursite.ru/. Перед этим, конечно, нужно
проверить, как «Яндекс» проиндексировал сайт
– с www или без. Желательно также назначить совпадающее
основное зеркало в файле robots.txt.
Строгий
URL страницы 404
Чтобы
убедиться, что сервер будет выдавать именно ту страницу 404, которую вы
подготовили и создали, а не служебную или какую-либо еще, добавьте
такую строчку:
ErrorDocument
404 http://www.yousite.ru/404.php
Аналогично можно указать страницы и для других ошибок.
Постраничный
и групповой редиректы
Перенаправить
с одной страницы на другую можно с помощью директивы Redirect:
Для группового редиректа нужно использовать RedirectMatch –
эта команда маски URL и имен файлов.
Сохранение
файлов вместо открытия
Многие
видели, как при попытке скачать архив с расширением .rar браузер
открывает его в виде простого текста из мешанины символов. Это значит,
что на сервере сайта не настроено принудительное сохранение типов
файлов, которые не должны открываться в браузере.
Настоятельно
рекомендуем использовать настройки, которые предоставляет ваша CMS.
Собственно, непонятные длинные URL возникают только при использовании
CMS (на статическом сайте их не бывает). Следовательно, используйте
настройки и модули CMS для настройки – во всех современных
движках такие возможности есть.
Для их корректной работы в .htaccess должна быть строчка RewriteEngine
On (включение mod_rewrite). Настройка же ЧПУ с помощью
«голого» .htaccess – дело достаточно
кропотливое. Например, чтобы превратить URL типа
www.yoursite.ru/script.php?tv=123 в более понятный
www.site.ru/samsung/tv/123/, пишем вот такие строчки (RewriteEngine On
нужно писать в том случае, если раньше в .htaccess mod_rewrite еще не
был подключен):
RewriteEngine
on
RewriteRule samsung/(.*)/(.*)/$ /script.php?$1=$2
Понятно, что для успешной настройки ЧПУ таким способом нужно освоить
весь синтаксис .htaccess и немало потрудиться. Гораздо проще,
повторимся, пользоваться средствами CMS.
Дубли
страниц без слэша в конце URL
Чтобы
предотвратить ситуацию с индексированием страниц www.yoursite.ru/about
и www.yoursite.ru/about/ как разных, ставим следущий код:
Со страниц без слэша будет установлен редирект на
«слэшевые».
Все приведенные выше примеры не
стоит бездумно копировать в .htaccess вашего сайта. Разберитесь, есть
ли у вашего сайта описанная проблема, можно ли ее решить с помощью
приведенного выражения, а потом уже правьте код. Обязательно сохраните
копию файла .htaccess до того, как начнете вносить изменения!
Важная рекомендация:
поищите в интернете оптимальные настройки .htaccess для вашей системы
управления контентом. У всех CMS есть свои особенности –
например, это специфические URL’ы страниц-дублей, с которых
нужно ставить редирект (и закрывать их от индексации). Для большинства
популярных CMS можно найти уже готовые правила для .htaccess.