Угу. Всем привет! Для кого
предназначена эта статья - для веб
разработчиков, для которых реально,
что вся раскрутка сайта, которая
ему (сайту) нужна, заключается в
достижение высших позиций в
наиболее популярных поисковых
машинах по интересующим ключевым
словам, ну и для остальных
работников рекламы в интернете (для
общего развития, так сказать :-)
ОК. Сразу к делу - как известно, не
все еще люди научились
пользоваться правильными
поисковыми машинами типа Google или
Yandex, многие (видать, по-старинке)
продолжают использовать для
поиска в Интернете поисковики
НЕправильные. В чем различие между
правильным и НЕправильным
поисковиком? Навскидку, оных
различий много, но одно из основных
- это то, что НЕправильные
поисковые машины НЕ индексируют
сайты c динамическим содержимым .
Мы здесь не будем показывать
пальцем, но таких поисковиков
достаточно много (например тот,
который на "Ра" начинается и
на "мблер" заканчивается).
И вот допустим, что вы решили
создать и раскрутить сайт (реклама
в интернете - великая вещь ;-) Да вот
незадача - вы хотите иметь на оном
сайте и гостевую книгу, и каталог
товаров, и... И для этого сайт должен
быть динамическим. И адреса у вас в
оном каталоге будут типа
...?tovar=good&indexed=false - так что
вышеупомянутый "мблер"
оставит ваш сайт за бортом :-(
Конечно, вы можете сказать - "Да
мы раскрутим сайт и безо всякого
там Рамблера! Да нам на Ра..." -
расскажу вам историю
двухнедельной давности:
Прихожу я в одну контору (мы вели
переговоры отн. создания трех
сайтов). Ну сидим мы общаемся.
Вопрос заказчика:
-
А вы сможете вывести нас
в первую десятку сайтов,
выдаваемых Рамблером по
ключевому слову "......"
-
Ну да, конечно, хотя я
предпочитаю использовать Гугль,
когда ищу по вашей тематике.
-
??? А что такое Гугль???
Вот так-то! А вы говорите
Яндекс :)
Можно, конечно (ежели уж совсем
серьезно подойти к рекламе в
интернете - а как иначе? :) делать
отдельный сайт для каждого
отдельного поисковика (и в общем-то
это правильно), но тогда вам
понадобится создать и раскрутить
не один, как минимум 3-5 сайтов, что
весьма и весьма трудоемко.
В общем, я расскажу вам об основах
того, как сделать, чтобы ваш
динамический сайт индексировался
Рамблером и другими подобными
скриптоненавистническими
поисковыми системами. Данная
технология используется на моем
новом сайте (внимание, рекламная
пауза ;-) Реклама
в интернете создание и раскрутка
сайта
Во первых давайте посмотрим вот
на что: каким именно образом робот
понимает, что ваш сайт имеет
динамическую структуру? Правильно
- он смотрит параметр 'href' тэга 'A' и
если в оном есть знаки ?
или & и если робот
НЕправильный, то страницу по
данному адресу он индексировать не
будет. Таким образом, задача
заключается в том, чтобы убрать из
строки урла вышеупомянутые
символы. А как же тогда передавать
параметры скрипту? Как...
Далее по пунктам (ежели что
непонятно будет пишите лично
- разберемся). Все повествование
будет вестись на основе реальной
разработки, и на выходе мы получим
маленький жизнеспособный скрипт,
поняв принципы работы которого, вы
сможете написать большой и глючный
интернет-магазин ;-)
-
Давайте сразу четко
сформулируем задачу: нам нужно
каким-то образом вызвать некий
скрипт и передать ему некие
параметры, при этом адресная
строка должна выглядеть как для
нормального, статического сайта.
Это просто, если мы передаем
скрипту данные из формы - ставим
"POST" и все дела. Но мы то с
вами должны передать параметры
из гиперссылки, то есть через URL,
то есть методом GET, то есть в УРЛе
будут ? или &,
то есть...
ОК. Есть такой файл, называется
.htaccess - в нем вы можете задать
некотрые директивы, управляющие
сервером Apache (сложно писать для
"широкой" аудитории - кто-то
сейчас читает и думает про себя -
чего он тут нам "азбуку жует",
а кто-то прочитал предыдущую
фразу, и материт меня за "тарабарщину
всякую"). Ну и ладно. В общем
знать об этом самом .htaccess нужно
примерно следующее - разместив
оный файл в какой-либо папке на
сервере, и написав в нем всякие
штуки, мы можем изменить
поведение сервера,
применительно к данной папке (если,
конечно хост провайдер
разрешает). Короче:
Помещаем файл с именем .htaccess в
корневую папку свего сайта
(DocumentRoot) - обычно она называется
WWW или www
И пишем в него следующие строки:
RewriteEngine on
RewriteRule ^core.php$ - [L]
RewriteRule .* /core.php
О чем это я? Аааа... ну да - есть
такой модуль Apache - mod_rewrite
называется. Описание данного
модуля, как это обычно говорится,
выходит за рамки данной статьи -
суть в том, что mod_rewrite делает с
путями на сервере, что душе
угодно и использует синтаксис
регулярных выражений в стиле Perl -
интересующиеся могут порыться в
интернете в поисках
документации к оному. И все же,
что мы там понаписали в .htaccess
RewriteEngine on
# Данной директивой .htaccess мы
включаем mod_rewrite
RewriteRule ^core.php$ - [L]
# Даем понять серверу, что если
запрошен файл с именем core.php
(название может быть
произвольным) то с оным файлом
нужно поступить так, как обычно
сервер поступает с предателями...
простите с файлами, имеющими
расширение .php - передать на
обработку дальше (модулю PHP).
RewriteRule .* /core.php
# Внимание! Здесь
происходит то, ради чего мы и
городим весь огород - теперь, что
бы мы не написали в адресной
строке - не имеет (пока не имеет)
ни какого значения - в любом
случае будет вызван скрипт с
именем core.php Но! Но в
адресной строке набранный адрес
остается прежним, то есть
переменная окружения REQUEST_URI
если набрано, например
www.somehost.org/123 будет равна именно
этому самому 123 и...
-
И мы можем запросто
разобрать эту строку в core.php,
таким образом, мы передаем
данные прямо в имени файла!!!
ишем тестовый скрипт и
сохраняем как core.php :
function parse($uri){
if($uri){
// вырезаем цифровые значения из строковой переменной $uri в массив $uri_number
eregi("[[:digit:]]+",$uri,$uri_number);
//выводим первый элемент массива в браузер
echo $uri_number[0];
}
}
// вызываем функцию с глобальной переменной $REQUEST_URI в качестве параметра
parse($REQUEST_URI);
-
Теперь набираем в
строке браузера что-нибудь типа
http://имя_вашего_хоста/vasia12345.html
Уррра!!! Получилось! (у меня все
работает по крайней мере :-)
Заметьте, что мы вызвали
несуществующий файл vasia12345.html -
сервер вернул нам OK (т.е. файл
найден) - и вывел в браузер цифры
12345. Оные же цифры и буквы (для тех
кто в танке ;-) можно передавать в
качестве параметров в функции,
внутри скрипта и пр.
Рамблер доволен, мы довольны, все
довольны! :-))
В заключение, хочу
отметить, что описанный метод,
далеко не единственный - я знаю по
меньшей мере еще три способа
избавиться от прелестей метода GET.
Но данный путь, на мой взгляд самый
гибкий и удобный.
|