Ранее мы обсуждали то, что можно (и необходимо) делать c веб-сервером при оптимизации веб-сайта. При всем этом необходимо осознавать, что создание высококачественной входящей ссылочной массы автоматизируется, как многие выражаются, различными системами, то внутренняя оптимизация – дело веб-мастера и обладателя веб-сайта.
По скольку самым всераспространенным веб-сервером для маленьких и средних по размеру веб-сайтов является Apache, остановимся на его главных настройках.
Обратим внимание, на то, что веб-серверы бывают разные. Для того чтобы использовать код, представленный ниже, убедитесь, что ваш веб-сайт, точно работает на хостинге, где установлен именно Apache.
Нужно заострить внимание на то, какой код в .htaccess добавляет CMS вашего веб-сайта. Нельзя допустить комфликтов вашего кода и кода CMS.
Веб-сервер – это программа, которая запущена на компе (его тоже именуют «сервером», не запутайтесь!), установленном в дата-центре хостинг-провайдера. Все знают то, что задачка веб-сервера – принимать и обрабатывать HTTP-запросы, также отправлять, как мы с вами постоянно говорим, запрошенные данные (которые могут, наконец, формироваться иным, как многие выражаются, программным обеспечением, установленным на сервере – к примеру, системой управления контентом).
Как также добраться до файла с опциями Apache
Для этого нужен – файл .htaccess. Это обычный текстовый файл, который можно сделать в обычной програмке «Блокнот» и так сказать расположить в корневом каталоге веб-сайта.
В подавляющем большинстве случаев .htaccess уже находится в корневом каталоге, так что можно просто редактировать его в «Блокноте» либо интегрированном редакторе FTP-клиента.
И так: что нужно писать в .htaccess?
В этом файле настройки можно указывать правила работы для ядра Apache, для подключаемых модулей (например mod_rewrite).
Традиционно Html код, главной странички, размещен в файле /index.html (либо index.php – для большинства динамических веб-сайтов), но веб-сайт должен раскрываться по любому из запросов: site.ru, site.ru/index.html, www.site.ru и www.site.ru/index.html. Но для поисковых роботов это четыре различных URL! Чтоб исправить эту ошибку нужно править файл .htaccess:
Options +FollowSymLinks
# включаем реврайт
RewriteEngine on
RewriteCond %{HTTP_HOST} ^site.ru
RewriteRule (.*) http://www.site.ru/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.html\ HTTP/
RewriteRule ^index\.html$ http://www.site.ru/ [R=301,L]
После этого страницы-дубли будут склеены перенаправлением с кодом 301 («постоянное перемещение») с главной страничкой – http://www.site.ru/. После необходимо назначить совпадающее основное зеркало в файле robots.txt.
Теперь обработаем страничку 404, которую вы, наконец, подготовили и сделали:
ErrorDocument 404 http://www.site.ru/404.php
Аналогично можно также указать странички и для остальных ошибок.
Перенаправлять с 1 страницы на другую можно при помощи директивы Redirect:
Redirect 301 /old.html http://www.yoursite.com/new.html
Для, массового редиректа используется RedirectMatch – эта команда маски URL и названий файлов.
Далее пропишем сохранение файлов вместо их открытия (часто текстовые и другие файлы при скачивании открываются в соседней вкладке.):
AddType application/octet-stream .rar .doc .mov .avi .pdf .xls .mp4
#Можно добавить и остальные расширения.
Теперь проведем настройку ЧПУ ссылок
Настройка ЧПУ при помощи .htaccess – дело довольно кропотливое. Однако на примере мы покажем преобразование URL типа www.site.ru/script.php?tv=123 в наиболее понятный www.site.ru/samsung/tv/123/ вид, это делает такой код:
RewriteEngine on
RewriteRule samsung/(.*)/(.*)/$ /script.php?$1=$2
Для вывода ЧПУ таковым методом необходимо освоить весь синтаксис .htaccess и придется немало потрудиться. Однако, повторимся, иногда проще воспользоваться средствами CMS.
Теперь уберем дубли страниц www.site.ru/about и www.site.ru/about/, смотрим следущий код:
RewriteCond % { REQUEST_FILENAME } !-f
RewriteCond % { REQUEST_URI } !(.*)/$
RewriteRule ^(.*) $ /$1/ [R=301,L]
Со страниц без слэша будет установлено перенаправление на «слэшевые».
Все приведенные выше примеры не стоит бездумно копировать в .htaccess вашего веб-сайта, потому что это всего лиш примеры. Перед работой обязательно сохраните копию файла .htaccess до его правки!