Белорусская цифровая библиотека




На главную страницу
altWebDeveloper#7
  • Колонка редактора
  • altWebDeveloper #7
  • Наши диски
  • Помощь
  • Развитию интернета мешают спамеры и модемные подключения
  • Yahoo наращивает объемы почтовых ящиков
  • AOL выпустила ускоритель интернета под маркой Netscape
  • В Белоруссии начали штрафовать за ссылки в интернете
  • Решение по делу об онлайновых библиотеках объявят в июле
  • Конгресс США одобрил закон по борьбе с троянскими программами
  • Google будет делать деньги на небольших компаниях
  • Крупнейшая атака на правительственные сайты Южной Кореи
  • Сайт президента России сменил дизайн
  • Российского спамера впервые приговорили к штрафу
  • Новости .NET
  • Кадр дня: Возвращение SpaceShipOne из космоса
  • Технический обзор Internet Information Services (IIS) 6.0
  • Обзор возможностей настройки приложений, построенных на технологии Microsoft ASP.NET
  • Словарь терминов
  • ASP.NET совместное выполнение под управлением .NET Framework 1.0 и 1.1
  • Создание примера Web-службы с помощью Microsoft Visual Basic .NET
  • Обзор возможностей кэширования в приложениях Microsoft ASP.NET
  • Как сделать использование текстовых ресурсов в .NET простым и надежным
  • Хранение и поиск текстов в базах данных SQL Server 2000
  • Секреты индексации динамических страниц в поисковых системах
  • Все тонкости регистрации в каталогах и поисковых системах
  • Как нельзя раскручивать сайты
  • Самые распространенные ошибки веб-оптимизации
  • Оптимизация сайта для каталогов
  • Трюк с блочной моделью CSS
  • Памятка по CSS
  • CSS-дизайн: нестандартное подчеркивание ссылок
  • Совершенная 404-ая страница
  • Не торопитесь с эскизами
  • The Code Project
  • DotNetJunkies
  • Microsoft
  • DNzone
  • Англоязычные сайты
  • Русскоязычные сайты
  • Брюс Стерлинг. Манеки-Неко
  • Анекдоты: TOP10
  • Реклама
  • Наши рассылки
  • Авторам, партнерам, редакторам
  • Сайт журнала altWebDeveloper Web
  • Сайт журнала CompoSoft Web
  • Студия web-дизайна Web

    Рассылки@Mail.ru
    Новости altWebDeveloper


    © 2004 CAS "altDesign"
    Все права защищены

  • ..: Web-promoting: Секреты индексации динамических страниц в поисковых системах :..
    Автор Cage
    Источник SiteMaker.Ru






    Думаю, никто не будет спорить, что реклама в поисковых системах - один из самых эффективных и дешевых способов раскрутки сайта. Именно поисковики (во всяком случае, их подавляющее большинство) готовы бесплатно проиндексировать Ваш сайт и показывать ссылки на него людям, которые его ищут. При этом Вы получаете очень качественный трафик, привлекая на свой сайт много заинтересованных посетителей. Все бы хорошо, но неожиданно появляется очень серьезная проблема: многие поисковики отказываются индексировать динамические страницы Вашего сайта. Самое приятное для нас (оптимизаторов) то, что это происходит не потому, что они динамические, а потому, что поисковый робот так думает. Но мы можем заставить его думать иначе.

    Этой проблемой лично я занялся, когда начал раскручивать свой каталог товаров лучших web-магазинов webshops.ru. PHP + MySQL хорошо сказывались на развитии каталога, но очень плохо, на желании поисковиков индексировать мой сайт. Rambler и Aport напрочь отказались индексировать больше одной (главной) страницы моего сайта index.php. Отсюда вывод, расширение не оказывает никакого влияния на индексацию, а не проиндексировались ТОЛЬКО страницы, содержащие "?", "&" и "=" в URL.
    Вот мы вплотную подошли к теме статьи, нам придется менять URL всех страниц и приводить его в нормальный вид.

      Я знаю 4 способа, как это сделать.

    1. Самый ламерский способ :). Мы пишем

      ErrorDocument 404 script.php

      в файле .htaccess, где script.php - файл, в котором обрабатывается запрошенный URL и выводится нужная страница. Способ основан на том, что вы можете выдумать любой URL по которому Вы потом однозначно можете отобразить нужную страницу, обработав его (URL) скриптом, который будет вызван, если страница, на которую Вы ссылаетесь не существует.

    2. В httpd.conf или .htaccess мы пишем строку

      Options Multiviews

      Теперь сервер при запросе URL вида <адрес директории>/one/two/three будет искать файл one с любым расширением (например one.php), который Вы заблаговременно помещаете в <адрес директории>. А уже в one.php разбираем переменную окружения $REQUEST_URI и показываем нужную страницу.

    3. В httpd.conf или .htaccess мы пишем

      <FilesMatch "^(index)$">
      ForceType application/x-httpd-php
      </FilesMatch>

      Этим мы говорим серверу, что если будет запрос <адрес директории>/index/one/two, то ему следует считать, что index, это не папка, а файл. Кроме того это еще и PHP-скрипт. Естественно Вам нужно будет создать файл index (без расширения), в котором Вы будете разбирать все запросы.

    4. И наконец самый мощный инструмент подмены URL-ов программный модуль mod_rewrite. В httpd.conf или .htaccess мы пишем

      RewriteEngine On
      Options +FollowSymlinks
      RewriteBase /
      RewriteRule ^index/(.*)$ /index.php/$1

      Этим мы запускаем сам модуль, устанавливаем действие модуля только на текущий каталог, определяем корневой URL и говорим серверу, что при запросе пользователя index/<какой_угодно_текст> пользователь будет перенаправлен по адресу /index.php/<какой_угодно_текст>. Вроде практической выгоды от такого перенаправления нет, но, если мы будем использовать пункты 3 и 4 одновременно, то может получиться интересный результат. На своем сайте (webshops.ru) я сделал так:

      RewriteEngine On
      RewriteBase /
      RewriteRule ^index/(.*)$ /index.php/$1
      <FilesMatch "^(index.php)$">
      ForceType application/x-httpd-php
      </FilesMatch>

      Т.е. включил механизм mod_rewrite, определил корневой URL, сказал серверу изменять все запросы index/<какой_угодно_текст> на index.php/<какой_угодно_текст> и сказал, что такой URL нужно принять за PHP-скрипт, выполнив index.php. Просто и со вкусом :).

    Теперь, например, написав в строке броузера http://webshops.ru/index/webshops, Вы (сами этого не подозревая) будете перенаправлены на http://webshops.ru/index.php/webshops, а этот запрос будет выполнен как http://webshops.ru/index.php с той лишь разницей, что в переменной $REQUEST_URI окажется "/index/webshops", что после благополучной обработки скриптом, покажет Вам список web-магазинов с их описаниями :).

    Такие URLы придутся по вкусу любому поисковому роботу (да и с эстетической точки зрения они выглядят лучше). Остался последний штрих.

    В тексте скрипта, до вывода на экран чего-либо (!) мы отправляем в header две волшебные строчки:

    Header("HTTP/1.0 200 OK"); //строка нужна только для п. 1
    Header("Last-Modified: ".gmdate("D, M d Y H:i:s",filemtime("index.php"))." GMT"); //строка пригодится в любом случае

    Первая строчка говорит роботу, что это обычная страница, а вторая - прописывает дату модификации, основываясь на дате последнего изменения index.php (файл, которым Вы обрабатываете все запросы).

    Если у Вас не отображаются картинки на странице, Вы можете прописать абсолютные пути к каждой картинке. Но лучше вместо этого прописать в <head></head> выдаваемой страницы строчку <base href=https://library.by/index.php?ваш_сайт.ru/>. Этим Вы скажете броузеру, что если посетитель забрел в виртуальную директорию (а именно так называются директории, которые мы только что научились делать), следует отсчитывать путь к картинке не от нее (ее нет :)), а от http://ваш_сайт.ru/.

    Все! Теперь Вы готовы покорять поисковики всеми страницами Вашего сайта в полном составе. Желаю удачи!



    При перепечатке любого материала с журнала или с сайта, видимая ссылка на источник http://altwebdeveloper.nm.ru и все имена, ссылки авторов обязательны.

    © 2004 CAS "altDesign"
    © Валерий В. Макеев (deepInfinity)


    CAS "altDesign" - создание сайтов от простых домашних страничек до крупных сетевых порталов.



    @ library.by