(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Как индексировать динамический контент

Источник: be1

Обычно под динамическим контентом понимается содержание, выдаваемое скриптом из базы данных. При этом url страницы будет выглядеть как http://www.сервер.ru/cgi-bin/data.pl?id=122&name=vasya. Проблема возникает в том, что значительная часть поисковых роботов отказывается индексировать страницы, в адресе которых встречается знак вопроса или cgi-bin. Некоторые поисковые машины с подозрением относятся к наличию в url .pl или .cgi.

Избавиться от этой проблемы можно несколькими способами.

Передача параметров в URL и переменную PATH_INFO.

Первый способ. Самый простой.

Делается небольшая "обманка" - если раньше Вы принимали параметры, вытаскивая их из QUERY_STRING, то теперь Вы будете их вытаскивать из PATH_INFO, простой передачей параметров по слешу и url будет выглядеть как data.pl/a=20 . Можно пойти немного дальше. Если Вам нужно передать только один параметр и он единственный, то можно сделать хитрее - cgi-bin/data.pl/20. Еше лучше будет сделать data.html/20, т.е. убрать из url cgi-bin. В последнем случае передавать скрипту параметры можно используя SSI директиву <!--#include virtual="/cgi-bin/data.pl?$PATH_INFO" --> . Далее взять QUERY_STRING, обрезать первый символ (всегда слеш) и разбирать обычным способом.

Прегенерация статических страниц

Второй способ. Хитрый.

Вы делаете (генерите скриптом или вручную) SSI станицу, именуемую значением или уникалным псевдонимом (например vasya.html), внутри которой стоит простая директива <!--#include virtual="/cgi-bin/data.pl?name=vasya" --> . Таким образом Вы управляете контентом этой страницы из базы данных, но поисковики (так же как и пользователи) видят эту страницу по удобному им URL.

При передаче нескольких параметров этот способ можно применять, закладывая параметры или в имя директории или в имя файла.

mod_rewrite

Третий способ. Самый хитрый.

Предлагаемый способ создания псевдостатических страниц - использование модуля mod_rewrite, если у Вас сервер Apache и провайдер позволяет Вам управлять им. Суть метода заключается в использовании возможности указать любой URL на сервере, далее перехватить запрос скриптом и выдать контент, т.е. при реальном отсутствии на сервере документов (вся информация хранится и выдается из базы данных) на сайте все URL видны как статические, т.е. без "?", "cgi-bin", ".php?id=" и прочих.

Включить сам модуль можно через httpd.conf или .htaccess

RewriteEngine on
Options +FollowSymlinks

Следующая неообходимая запись
RewriteBase /
говорит модулю где применяется модуль, указание "/" эквивалентно "везде внутри сервера"

Завершающие строчки настройки модуля - указание что при каких условиях делать, например:

RewriteCond %{HTTP_USER_AGENT} ^EmailSiphon
RewriteRule ^.*$ - [F]

В данном случае запрещается пользователю с браузером EmailSiphon входить на сайт.

А запись типа
RewriteRule ^(.*)shop/(.*)$ $1cgi-bin/shop.cgi?id=$2
говорит серверу, о том, что при запросе вида www.domen.ru/AAAAAAshop/1234 должен быть выдан контент с URL www.domen.ru/AAAAAA/cgi-bin/shop.cgi?id=1234

Рекомендуем Вам внимательно и аккуратно пользоваться этим способом, т.к. при его использовании может сильно возрастать нагрузка той машины, на которой хостится Ваш сервер. Детальное описание модуля есть на сайте производителя - http://www.apache.org/docs/mod/mod_rewrite.html.

Важное примечание.

Обратите внимание на обязательную проверку передаваемых параметров дабы исключить возможность взлома Вашего сервера через скрипты. Также обратите Ваше внимание на работу скриптов при отсутствии передачи им параметров - они не должны выдавать ошибку.



 Распечатать »
 Правила публикации »
  Написать редактору 
 Рекомендовать » Дата публикации: 25.11.2006 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
GFI FaxMaker и 1 год поддержки (10-49 лицензий)
IBM Domino Enterprise Server Processor Value Unit (PVU) License + SW Subscription & Support 12 Months
VMware Fusion 10 Pro, ESD
Panda Global Protection - ESD версия - на 1 устройство - (лицензия на 1 год)
Oracle Database Standard Edition 2 Processor License
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Безопасность компьютерных сетей и защита информации
Программирование в AutoCAD
СУБД Oracle "с нуля"
OS Linux для начинающих. Новости + статьи + обзоры + ссылки
Реестр Windows. Секреты работы на компьютере
Работа в Windows и новости компании Microsoft
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
 



    
rambler's top100 Rambler's Top100