Decorating your home in any season or especially when the festivity season is coming is a common need and also gives an advantage to your home and also you feel more confident when guests arrive.

Веб-дизайн - Учебники - Сайтостроительсво и веб-дизайн - Глава 21 Форумы, чаты и другие дополнительные возможности

Глава 21. Форумы, чаты и другие дополнительные возможности

Создание и размещение форумов
Виды форумов и применяемые технологии
Выбираем тип серверного форума
Установка серверного форума
Форумы, работающие на чужом сервере (хост-форумы)
Internet-клубы интерактивного общения (чаты)
Счетчики и веб-статистика
Организация доступа к веб-статистике
Как установить счетчик на странице?
Вставки на стороне сервера
Резюме
Существует множество различных возможностей сделать сайт более интерактивным, причем для этого даже нет необходимости знать языки программирования. Можно скачать и установить на сервере программное обеспечение, созданное другими людьми, или воспользоваться службами, уже работающими на других серверах.

В последнее время все большее применение находят технологии, позволяющие организовать онлайновое сетевое виртуальное общение. Это прежде всего форумы и чаты. Что касается прочих дополнительных возможностей, то здесь следует упомянуть счетчики посещений и другие утилиты, позволяющие отслеживать статистику.

В этой главе мы обсудим:

поиск, создание и размещение форумов;
живые веб-чаты на основе сторонних разработок;
готовые счетчики и статистика на сайте;
обработка статистики.
Создание и размещение форумов

Еще до того, как Интернет достиг нынешнего уровня популярности, многие мечтали иметь возможность «встретиться» в киберпространстве. Для этого существовали такие службы, как AOL (America Online), BBS (электронные доски объявлений) и т. п. Большинство из них работало в локальном режиме с использованием модемов и телефонных линий. Программное обеспечение BBS отвечало на звонки пользователей и предоставляло определенный интерфейс для чтения новостей, обмена файлами и почтой, в том числе для написания писем в тематические форумы.

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

Если вы хотите добиться интерактивного взаимодействия с посетителями своего сайта, отвечать на их вопросы, вести оживленные дискуссии — в общем, объединить в некое виртуальное сообщество своих постоянных пользователей, — подумайте: может быть, вам необходимо построить форум или электронную доску объявлений. Корпоративные сайты также могут только выиграть от наличия на них форумов, хотя бы потому, что тогда шеф сможет ответить на вопросы своих подчиненных или обсудить с ними какие-нибудь вопросы.

Виды форумов и применяемые технологии

Как и в случае с большинством других веб-приложений, различают две разновидности форумов: серверные и исполняющиеся на стороннем сервере. Серверные форумы устанавливаются на своем сервере, там же они выполняются. С такими программами можно производить разные действия: осуществлять поддержку, удалять, переустанавливать и т. д.

Серверные форумы имеют огромное количество разновидностей и очень отличаются по своим возможностям, начиная от приложений ASP и заканчивая CGI-скриптами, написанными на Perl и С. Некоторым из них требуется, чтобы сервер имел возможность работы с базами данных, например ODBC. Другим нужна поддержка РНР (язык написания скриптов для серверных приложений) и подобных языков.

Что касается форумов, выполняющихся на стороннем сервере, то обычно их создателями являются фирмы, специализирующиеся исключительно на этом. Вы как бы подписываетесь на форум, иногда за эту привилегию взимается определенная плата. Вам сообщают имя пользователя, пароль и URL, после чего вы получаете доступ к форуму, можете задавать собственные темы для обсуждения, публиковать письма. Получается, что вы как бы устанавливаете связь с ним со своего сервера, хотя можете сделать так, чтобы форум выглядел как составная часть вашего сайта. Однако URL все равно будет отличаться, к тому же может оказаться, что у вас нет доступа к файлам, содержащим письма.

Такие форумы просты в использовании, но слабо управляемы. Если вы решили воспользоваться предоставляемой какой-то третьей стороной услугой, это означает, что вы соглашаетесь с выставляемыми условиями. Поэтому не удивляйтесь возможному наличию цензуры. Могут быть ограничения по управлению передачей сообщений и восстановлению старых писем или настроек. И хотя сейчас значительное число веб-авторов предпочитает именно такой способ создания форумов на своих сайтах, некоторые свойства, упрощающие начальный этап внедрения, оборачиваются большими неудобствами в использовании.

Выбираем тип серверного форума

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

Какая установлена операционная система: Unix, Windows, Mac, что-то другое?

Какой вид доступа к серверу можно получить? Можно ли устанавливать программы в каталог cgi-bin?

Каковы доступные технологии написания скриптов (языки CGI), поддержки баз данных?

Каковы конкретные номера версий языков и стандартов, касающихся скриптов?
Представитель вашего поставщика услуг Интернета должен понять, о чем идет речь, и разрешить все ваши сомнения. Если же вы планируете реализовать какие-нибудь серверные приложения для корпоративного сайта, то сотрудник вашей компании тоже должен знать ответы на эти вопросы.

Если вы все это уже выяснили, осознали все ограничения сервера, то можете приступить к поиску подходящего программного обеспечения форума. Лучше всего начать с «Руководства по Интернет-конференциям» (http://www.thinkofit.com/webconf). Здесь вы найдете ссылки на большинство имеющихся программных продуктов, касающихся этой области.

Нужно сразу решить для себя, готовы ли вы платить за программу? Есть много бесплатных приложений для организации форумов, но практически ни одно из них не обладает нужной гибкостью и не может придать Интернет-конференции профессиональный вид. Коммерческие программные продукты, конечно же, отличаются друг от друга по цене и могут стоить от десятков до сотен долларов, но в большинстве случаев эти затраты оказываются оправданными.

Кроме своего внешнего вида, форумы отличаются еще и по многим другим параметрам. При выборе программы следует выяснить такие вопросы:

Гибкость настройки. Можно ли изменить интерфейс конференции таким образом, чтобы он сливался с веб-сайтом? Можно ли изменять цвета, шрифты и т. д.?

Гибкость управления. Как осуществляется регулирование доступа пользователей к конференциям и письмам? Можно ли задать несколько групп («уровней» привилегий) пользователей или все попадают в одну категорию по причине того, что программа не умеет обрабатывать подобные вещи? Можно ли посылать письма сразу всем зарегистрированным пользователям? Можно ли заблокировать сообщения определенных пользователей, можно ли с помощью программы технически реализовать функции, выполняемые модератором (обычно им становится человек, неплохо разбирающийся в данной предметной области и не дающий сообщениям пользователей уклоняться от темы)?

Интерфейс пользователя. Могут ли посетители использовать разметку HTML, изображения, анимацию и т. п. для того, чтобы придать дискуссиям более персонифицированный и интересный вид?

Далее приведен список наиболее популярных и примечательных программ для создания веб-форумов.

WWWBoard (http://wolrdwidemart.com/scripts/wwwboard.shtml). Не могу сказать, что это самая удачная программа BBS. Основной ее недостаток заключается в том, что при большом количестве сообщений она становится очень громоздкой и неповоротливой. Тем не менее благодаря своей бесплатности она давно уже стала популярной. Программа написана на Perl, в ее системные требования входит наличие Perl 4 или выше, имеются версии под Windows и Macintosh.

WebBBS (http://www.extorpia.com/applications/web__bbs.html). Еще одно простое популярное решение, чем-то напоминающее WWWBoard. Мало чего интересного в смысле пользовательского интерфейса и гибкости управления. Для работы требуется Perl 5.

IkonBoard (http://www.ikonboard.com). Тоже бесплатная. Популярна благодаря тому, что очень похожа на Ultimate ВВ (см. далее), предложившей в свое время некий образец того, как должна выглядеть электронная доска объявлений. На самом деле, удивительно, что эта программа распространяется бесплатно. Но вместе с тем для того, чтобы быть в курсе последних новостей, нужно постоянно устанавливать различные обновления. Без них программа довольно стремительно устаревает. Для работы требуется Perl 5.004.

YABB (http://yabb.xnull.com). Название расшифровывается так: «Yet Another Bulletin Board» («Очередная электронная доска объявлений»), что звучит несколько самокритично. Несмотря на то что программа бесплатная, возможности ее велики. Во-первых, этот программный продукт является открытым, то есть исходные тексты доступны для редактирования (с сохранением авторских прав). Внешне YABB похож на Ultimate BB, при этом и интерфейс, и возможности управления находятся на весьма высоком уровне. Требуется поддержка Perl 5, существуют две версии: под Windows NT и Unix.

Discus (http://www.discusware.com/). Существуют две версии этой программы. Как вы догадываетесь, одна из них бесплатная, вторая — коммерческая. Обе конкурентоспособны в соответствующих секторах потребительского спроса. При этом бесплатная версия очень популярна, а коммерческая радует низкой ценой ($149). Многим пользователям нравится интерфейс, построенный по принципу дерева, в котором не так много красивой графики, чем в Ultimate BB, но он все равно достаточно прозрачен и понятен. Среди системных требований — поддержка Perl 5.005, ОС сервера: Windows или Unix.

Ultimate Bulletin Board (http://www.infopop.com/). Это прародительница стандарта на подобные приложения. Особенно она была популярна тогда, когда существовала бесплатная версия. Теперь можно бесплатно скачать только лишь пробный вариант, рассчитанный на определенное число запусков. Стоимость полной версии $199. О самой программе отзывы пользователей исключительно положительные. Она и внешне хороша, и настраивается очень гибко. В нее включены такие функции, как e-mail, HTML, поиск, профили пользователей и многое другое. Для написания программы использовался Perl, но есть и РНР-версия под названием UBBThreads.

vBulletin (http://www.vbulletin.com/). Еще один клон Ultimate BB, имеющий у некоторых пользователей даже более высокие оценки, нежели оригинал. Стоимость его чуть ниже ($85 в год или $ 160 за лицензию на неограниченный срок), используется РНР и MySQL, что обеспечивает ускоренную работу по обмену данными по сравнению с Perl-решениями. Среди минимальных требований vBulletin — РНР 3.0.9 и MySQL 3.22. Существует урезанная версия (Lite), которой можно воспользоваться для тестирования форума или для создания веб-конференций на небольших сайтах. У нее возможностей меньше, чем у полной версии, но она тем не менее является рабочей программой. На рисунке 21.1 по казано, как выглядит форум, посвященный vBulletin и использующий одноименное программное обеспечение.

 

Рис. 21.1. Программа vBulletin — это недорогой и качественный продукт с графическим интерфейсом для создания веб-конференций

Установка серверного форума

Что же нужно предпринять для того, чтобы форум заработал на сайте? Для каждого программного пакета рекомендации будут разными. Некоторые из них требуют долгой и кропотливой настройки, последнее замечание особенно касается бесплатных программ. Но существуют и некоторые общие шаги:

1. Для начала скачайте установочный комплект, разархивируйте его.

2. Скопируйте файлы в разные каталоги своего веб-сервера, следуйте рекоменда- циям инструкции, что куда положить. Особенно внимательно следите за тем, чтобы не забыть ничего, что должно находиться в cgi-bin.

3. Установите необходимый уровень доступа к скриптам форума, чтобы они могли выполняться веб-сервером по настоянию браузера. Обычно для этого нужно воспользоваться либо программным обеспечением FTP, либо командной строкой Unix, если сервер предусматривает возможность соответствующего входа в систему.

4. Займитесь окончательной настройкой системы, включая создание уровней при вилегий пользователей (не забудьте про себя — администратора форума с особыми возможностями), задайте начальную тему конференции, настройте внешний вид и поведение и т. д. Иногда процесс настройки заключается в работе с HTML-документом, а иногда — в ручном исправлении значений параметров в текстовом файле (рис. 21.2).

ВНИМАНИЕ

Изменение уровня доступа к скриптам — дело несложное, но ответственное. При случайной ошибке в защите сервера может появиться брешь. Если вы не до конца уверены в том, что делаете, следует проконсультироваться с системным администратором или техническим представителем поставщика услуг Интернета.

 

Рис. 21.2. Пример конфигурационного файла YABB

После установки и настройки программы доступ к ней можно получить с помощью стандартного URL, указывающего на CGI-скрипт. Например: http://www.fakecorp.com/ cgi-bin/forum.pl Теперь форум готов, пользователи могут начинать отправлять н получать сообщения. Иногда вам как администратору конференции придется осу ществлять некоторые специфические операции, для этого нужно воспользоваться созданным вами же административным входом.

ПРИМЕЧАНИЕ

Помните о том, что любая интерактивность сайта, выраженная, например, в CGI-приложе нии, — это потенциальная угроза безопасности сервера. Следует ознакомиться с литературой, посвященной вопросам защиты информации в Интернете, прочитать разделы руководства к ПО форума, касающиеся этой темы, внимательно изучить вопросы создания входа и пароля администратора. Помните, что на вас лежит ответственность за то, чтобы на сайте работала самая свежая версия скриптов конференции, поскольку обновления зачастую выпускаются именно вследствие обнаружения «дыр» в защите.

Форумы, работающие на чужом сервере (хост-форумы)

Если вам не хочется возиться со скачиванием, настройкой форума и заниматься переговорами с системными администраторами о доступе к cgi-bin, если вы боитесь что-нибудь сделать не так, сменить уровень доступа к скриптам, — возможно, вам нужно обратить внимание на технологию хост-форумов. Когда вы работаете с форумом, ПО которого установлено на постороннем сервере, нужно лишь ввести имя пользователя и пароль, и вы оказываетесь перед электронной доской объявлений. Посетители вашего сайта могут сделать то же самое с помощью специального URL, который вы включите в код страницы и который будет указывать на хост-сервер. Конечно, контроль над программой, выполняющейся даже не на вашем, а на чужом сервере, не может быть полным. Но достоинством подобных форумов является то, что они создаются профессионалами.

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

Подобный тип форума — это замечательное решение для людей, пишущих сайт в одиночку, для своих друзей, клуба по интересам и т. п. Это идеальный вариант и тогда, когда управление обсуждениями не является критичным. Например, если обсуждение построено в форме вопросов и ответов. На рисунке 21.3 показан один из моих хост-форумов в действии.

СОВЕТ

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

Среди хост-форумов есть скромные и бесплатные, есть дорогие, с богатыми возможностями. Далее приведен список некоторых из них.

EZBoard (http://www.ezboard.com/). Виртуальное пространство для дискуссий может быть предоставлено бесплатно, если вас не заботит наличие «дополнительных возможностей» типа баннеров и выскакивающих окошек (окончания загрузки таких окошек пользователь обычно не дожидается — переключается на них и, не читая содержимого, жмет на крестик в правом верхнем углу). За небольшую дополнительную плату можно отключить эту мишуру. На EZBoard существует механизм, позволяющий организовать сбор денег с пользователей. Внешний вид программы заставляет вспомнить об Ultimate BB, настройки достаточно гибкие, платное обслуживание подразумевает возможность восстановления информации.


Рис. 21.3. Форум, посвященный Mac. Хостинг предоставлен компанией EZBoard. Хотя он в реальности находится и не на моем сайте, но вписывается в него очень хорошо

BoardHost (http://www.boardhost.com/). Программное обеспечение этой электронной доски объявлений очень простое, но некоторым оно нравится именно своей простотой. Нет никаких тематических разделений. Базовый вариант форума предоставляется бесплатно, оплачивается только отключение назойливых дополнительных услуг.

TimTyler Solutions (http://www.timtyler.com/siteForums/). Еще один базовый вариант решения проблемы форума, мало чем отличающийся от других. Наличествуют и вступительный взнос, и ежемесячная абонентская плата. Главное достоинство заключается в персональном подходе к каждому клиенту и обеспечении необходимого уровня услуг.

MSN Communities (http://communities.msn.com). Это продукт фирмы Microsoft. За счет многочисленных спонсоров, чью рекламу вы будете наблюдать при работе, форум предоставляется бесплатно. В программу заложено очень много функций и возможностей (например, можно обмениваться фотографиями, существуют календарь и чат). Полноценное приложение, однако внешний вид форумов не настраивается, то есть сложно сделать так, чтобы веб-конференция выглядела как расширение сайта.

World Crossings (http://worldcrossing.com/). Это — хост-версия программы Web Crossing той же самой компании. Нельзя сказать, что она является очередной копией UBB, однако интерфейс выглядит довольно приятно и универсально. Можно выстраивать цепочки сообщений. Услугами World Crossing можно пользоваться бесплатно, но при этом придется лицезреть непрошеные банне ры. И все равно я считаю, что это неплохой вариант для тех, кому нравится простой дизайн и не очень сложное управление.

InfoPop (http://www.infopop.com/). Разработчиком является та компания, благодаря которой на свет появились Ultimate BB и ее хостинговая версия. Предназначена для корпоративных клиентов, в соответствии с этим установлена и немалая цена: $299 в месяц (причем так оплачивается только базовый вариант; все остальное — дороже).
Internet-клубы интерактивного общения (чаты)

Вот уже много лет одним из достоинств крупных онлайновых служб типа AOL яв ляется возможность в «прямом эфире» Интернета вести «беседы», обмениваясь не большими текстовыми сообщениями, которые могут видеть одновременно десятки и сотни людей. Таким образом организуются целые клубы виртуальных знакомых.

Обычно такие чаты не входят в возможности протокола HTTP, не всегда могут решить такую задачу и CGI-приложения. Почему? Да потому, что веб-технологии являются во многом статичными. Щелкнем на ссылку — что-нибудь загрузится, щелкнем на другую ссылку — снова появится что-то новенькое. Для Интернет-чатов требуется разработка Java-апплетов.

Большинство чатов не создаются веб-авторами, разрабатывающими сайты. Обычно берутся уже готовые приложения, написанные профессиональными программиста ми. Скорее всего, вам хватит для сайта бесплатного чата, оплачиваемого спонсора ми. Однако, если ваша цель — создать большой и серьезный корпоративный сайт, где интерактивное общение в онлайновом режиме является не игрушкой, а производственной необходимостью, вы можете воспользоваться платными программами.

Помните, что чаты далеко не всегда будут связаны по тематике и по внешнему виду с вашим сайтом. В этом направлении будет непросто предпринять какие-либо существенные шаги. Есть популярная разновидность чатов, в которых участвует не толпа народа, а только два человека. Кроме того, иногда можно определять группы пользователей, с которыми вы хотели бы наладить контакт. Вот некоторые сайты, на которых расположены чаты. Вы можете поставить ссылку на них и порадовать своих посетителей возможностью пообщаться в Интернете.

MSN Messenger — http://messenger.msn.com/.

Yahoo! Messenger — http://messenger.yahoo.com/.

AOL Instant Messenger — http://www.aim.com/.
Присоединить чат к сайту можно двумя способами. Либо создать гиперссылку на Java-апплет, работающий на постороннем сервере, либо скачать приложение и заставить его работать на своем сервере. Если у вас нет физического доступа к последнему, то я бы посоветовал хост-чат. Надо понимать, что даже возможности влезть в каталог CGI может оказаться недостаточно, когда вы имеете дело со сложным приложением на Java.

Ниже приведен список чат-серверов, которые можно сделать частью своего сайта.

DigiChat (http://www.digichat.com/). Это серьезное приложение, включающее в себя такие возможности, как моделирование, фильтрование содержимого. Настроек довольно много. Стоимость лицензии на его использование составляет $595 и выше, в зависимости от числа пользователей. Можно разместить ссылку на хост-чат, использование которого обойдется в $25 в месяц.

ChatBlazer (http://www.chatblazer.com/). Цена этой программы составляет $395 за версию Gold Edition. Другие версии стоят дороже, их стоимость может достигать $9995 в зависимости от числа поддерживаемых сайтов. Программа будет работать на любом сервере с поддержкой Java; предусмотрено внедрение в веб-страницу с целью создания более интегрированного дизайна.

iChat (http://www.ichat.com/). Программа ориентирована на корпоративного клиента. Лицензию можно приобрести за $495. Есть интересный режим рабо- ; ты под названием «аудитория», когда активно общаться может только узкий круг людей, а остальные могут только читать сообщения.

VolanoChat (http://www.volanochat.com/). Еще один довольно дорогой чат ($495 и выше), обладающий, в принципе, теми же самыми возможностями, что и другие: моделирование, баннеры, аудитории, тематические «кулуары». Есть бес платная полнофункциональная демонстрационная версия, рассчитанная на 5 пользователей.

Если испытываете финансовые трудности, чтобы позволить себе или своей ком пании устанавливать такие дорогие приложения, то можно попробовать воспользоваться бесплатными или почти бесплатными аналогами. Они отличаются мень шими возможностями управления, иногда тяжело бывает добиться от них нужного вида, не всегда удается избавиться от баннеров и т. п. Но, несмотря на все это, и их возможностей может хватить для скромного сайта. Вот некоторые примеры:

ChatPod (http://www.chatpod.com/). На бесплатный чат, предлагаемый этим сай том, можно поставить у себя ссылку. ChatPod был написан той же компанией, которая в свое время создала DigiChat, поэтому в случае необходимости переход на платную версию будет совершенно безболезненным.

Multicity (http://www.multicity.com/). Отличается интересной ценовой полити кой. Чат с ограничением в 25 пользователей предоставляется бесплатно. Версия «От 25 до 50» будет обходиться в $30 в месяц, версия «От 50 до 100», обладающая уже несколько более профессиональными чертами, — $50 в месяц. Клиенты могут работать как через Java, так и с помощью HTML, что особенно ценно для тех, у кого Java не поддерживается. Multicity — это панель мгновен но передающихся сообщений, веб-вызовов абонентов и даже электронных аук ционов и торгов.

Talkcity (http://www.talkcity.com/). Здесь вы найдете бесплатные чаты. Можно создавать свои, пользоваться имеющимися, а также получить виртуальное пространство в собственное распоряжение всего за $3 в месяц. Подразумевается парольный вход пользователей в систему, что гарантирует более или менее безопасную работу. Программа может рассказать о вашем сайте миллионам пользователей, а может хранить полное молчание, и о нем узнают только посвященные.

GroupBoard (http://www.groupboard.com/). Интересная особенность отличает этот чат от других. Можно не только общаться с собеседниками, но и рисовать на экране, как мелом на доске, разные картинки, и все, с кем вы в данный момент общаетесь, их увидят. Это незаменимо при обсуждении технических дета лей чего-нибудь или при обучении.

Bravenet (http://www.bravenet.com/). Стандартные услуги бесплатного (оплаченного рекламодателями) хост-чата на основе Java.
СОВЕТ

Большинство приложений, на которых написаны чаты, делают примерно одно и то же, отличаясь друг от друга лишь внешним видом. По указанному ниже URL можно обнаружить длинный список всевозможных бесплатных программ, написанных на Java: http://free-warejava.com/applets/chat.shtml.

Счетчики и веб-статистика

Многие веб-авторы очень интересуются ростом или падением популярности своих детищ. Основным показателем этого традиционно является значение счетчика посещений. Часто можно увидеть на одном узле несколько счетчиков. Так выясняется спрос на те или иные разделы. На основе получаемых данных создается статистика. Обо всем этом мы и поговорим с вами в этом параграфе.

Многие серверные приложения хранят подробные сведения о том, какие страницы были посещены, с каких IP-адресов поступали на них запросы, с каких страниц приходили пользователи. Если вам все это интересно знать, загляните в файлы статистики своего веб-сервера.

Но не все авторы веб-сайтов имеют доступ к этим так называемым лог-файлам. Как раз для этого и существуют счетчики. Они могут выглядеть по-разному, часто выполнены в виде как бы автомобильного одометра (счетчика пройденного пути), увеличивающего свое значение всякий раз при посещении страницы. Некоторые более интеллектуальны — подсчитывают количество пользователей (имеющих разные IP-адреса), посетивших сайт, или выдают более детальную информацию.

Организация доступа к веб-статистике

Если вы содержите собственный веб-сервер, то, наверное, вы догадываетесь, где лежат электронные журналы со статистикой. Скорее всего, они представляют собой автоматически генерируемые серверным ПО файлы. В Unix-системах можно даже предположить их наиболее вероятное местонахождение — что-нибудь типа каталога /var/log/httpd/. Если вы выкладываете свой сайт на сервере своего поставщика услуг Интернета, то можно попробовать договориться с ним о том, где будет находиться статистика и как можно организовать к ней парольный доступ. Желательно, чтобы файл журнала можно было скачать и спокойно с ним работать.

Что собой представляет файл журнала? Каждая новая запись в нем соответствует запросу на доступ к веб-странице или иному ресурсу сайта. Но разглядывание этих записей практически ничего не расскажет вам о существующем положении дел. Вам поможет программа обработки статистики. Пожалуй, самой популярной из них является Analog (http://www.statslab.cam.ac.uk/~sretl/analog/), существуют ее версии практически для всех современных ОС. Вам нужно запустить программу и сообщить ей, где находится файл со статистикой. Дальше она разберется сама. Результатом ее работы будет HTML-документ, который и даст вам представление о том, насколько успешно движутся дела на сайте (рис. 21.4).

 

Рис. 21.4. Результатом работы программы Analog является обычная HTML-страница, на которой показаны различные статистические показатели

СОВЕТ

Некоторые поставщики услуг Интернета сами предлагают выкладывать результаты работы анализаторов статистики где-нибудь в Сети. Причем есть и такие, которые предлагают пользоваться их собственными разработками в этой области.

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

Как установить счетчик на странице?

Даже если вы имеете доступ к статистическим данным на сервере, удобно иметь небольшой где-нибудь на самой странице. С его помощью можно быстро узнать, сколько людей ее посетило, для этого не придется обращаться к подробной статистике.

Проще всего установить счетчик с помощью так называемой вставки со стороны сервера (SSI), речь об этой технологии пойдет дальше. Однако в том случае, если ваш сервер или поставщик услуг Интернета не имеет поддержки SSI или вы, к примеру, нуждаетесь в большей гибкости настройки счетчика (хотя бы даже настройки его внешнего вида), имеет смысл обратиться к CGI или Java.

Счетчику, построенному по технологии CGI, стоит отдать предпочтение в том случае, если вы не хотите полагаться на веб-браузер, как в случае с использованием Java-счетчика. CGI-счетчики рассчитывают целиком и полностью на ваш сервер, так что вы можете быть уверены, что с ними все в порядке, они работают. Недостаток заключается в их, может быть, излишней простоте. Например, они могут быть исключительно текстовыми или, наоборот, слишком вычурными, с рекламой и непонятными ссылками.

Если доступ к каталогу cgi-bin у вас имеется, то вы либо сами можете установить CGI-счетчики, либо эту услугу может предложить ваш провайдер. На самом деле, огромное их количество разбросано по всему Интернету. Например, в архиве скриптов, расположенном по адресу: http://www.worldwidemart.com/scripts/. Или на
CGIAdmin.com (http://www.CGIAdmin.com/freescripts/),
FreeCode (http://www.freecode.com/index/),
CGIExtremes (http://www.cgiextremes.com/).
Возьмите любой сборник скриптов и обнаружите в нем массу счетчиков.

Если же вы не хотите устанавливать счетчик на своем сервере, то можно воспользоваться хост-счетчиками, которые будут работать на чужом сервере. Многие из них бесплатны. Далее приведен список веб-узлов, на которых можно обзавестись счетчиком.

Digits.com (http://www.digits.com/). Это популярный бесплатный графический счетчик. Впрочем, он бесплатен лишь потому, что вы используете графику, рекламирующую эту компанию, а также ставите ссылку на ее сайт.

Web-Stat (http://www.web-stat.com/). Это уже больше чем просто счетчик. Web-Stat умеет производить анализ трафика. В этом он похож на программу типа Analog. При этом счетчику не нужен доступ к файлу.журнала. Вы просто помещаете код скрипта на своей странице, и Web-Stat отслеживает количество посещений. Стоимость этого счетчика составляет $5 в месяц.

CyberCount (http://www.cybercount.com/). Как и Web-Stat, CyberCount представляет собой графический счетчик со статистикой. Его можно использовать бесплатно, если разместить баннер CyberCount на своей странице. В противном случае придется платить $5 в месяц.

FastCounter (http://www.bcentral.com/products/fc/default.asp). Еще один популярный счетчик от bCentral (Microsoft). Для членов bCentral использование бесплатно. (Что такое bCentral? Это сайт «маленьких деловых хитростей», придуманный Microsoft для повышения сетевого трафика за счет его посетителей, отправляемых по веб-кольцам, поисковикам и т. п.)
Все эти счетчики устанавливаются очень просто. Вам будет дан кусок HTML-кода, который нужно будет вставить в веб-документ. После загрузки страницы на сервер и открытии ее с помощью браузера счетчик активируется.

Вставки на стороне сервера

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

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

SSI поддерживаются далеко не всеми серверами, а некоторые системные администраторы специально их выключают, чтобы снизить вероятность незаконных проникновений. Прежде чем писать команды, обсудите конкретную реализацию вставок на стороне сервера с системным администратором. Синтаксис может чуть-чуть изменяться в зависимости от серверного ПО.

В качестве общей информации предлагаю вам рассмотреть процесс подключения SSI к своему сайту.

1. Убедитесь, посоветовавшись с системным администратором, что ваш веб-сервер действительно имеет поддержку серверных вставок и что вы можете ими пользоваться.

2. Сохраните свою страницу с расширением .shtml или .shtm. Именно по расширению сервер узнает, что на данной странице есть команды SSI.

3. Напишите нужные команды в тексте кода страницы. Они должны быть заключены в комментарии и имеют примерно такой формат:

 <!-- #include file="banner.txt" -->
Кроме команды #1 ncl ude обычно есть еще команда типа #echo, которая выводит что-нибудь на странице. Например, значение переменной окружения:

<!-- #echo var="DATE_LOCAL" -->
Эта команда вставит текущую дату. Помните, что данная технология работает таким образом, что текст в веб-документе изменяется до того, как он отправляется браузеру. Поэтому команды можно помещать даже внутрь контейнеров XHTML:

 <р>Дата последних изменений: <b><!-- #echo var="LAST_MODIFIED" --></b></p>
К тому моменту, когда страница достигнет браузера, в ней уже не будет никаких команд, заключенных в комментарии <!-- -->. Все это заменится значением, поставляемым командой #echo. И даже если пользователь посмотрит исходный HTML-код страницы, то никаких команд SSI он там не увидит.

СОВЕТ

Переменные окружения обсуждались в главе 16. Их можно с успехом использовать и здесь.

Так работают счетчики, баннеры, разные меняющиеся «Шутки дня». Используется команда exec. Она запускает скрипт, результат работы которого и вставляется в страницу. Рассмотрим такой пример. Допустим, имеется скрипт, который вызывает счетчик, при этом counter. pi находится в том же каталоге, что и сама страница. Тогда вывести значение счетчика можно следующим образом:

 <р>На этой странице с 1 марта побывало <!-- exec cmd="./counter.pl" --> человек.</р>
Вы, наверное, обращали внимание на подобные строчки, они часто встречаются на веб-страницах. Как видите, никакой специально обученный работник не сидит перед сервером и не считает, сколько человек зашло на страницу. Этим занимается скрипт. Он вызывается командой SSI, а сервер, в свою очередь, заменяет встретившуюся в коде .shtml-файла команду на значение, выдаваемое скриптом.

ПРИМЕЧАНИЕ

Как и любой другой, этот CGI-скрипт должен быть исполняемым. На серверах Unix и Windows для этого необходимо либо установить определенные уровни доступа, либо скрипт должен представлять собой исполняемое приложение. В этом есть определенный риск, поэтому обязательно проконсультируйтесь с системным администратором, прежде чем предпринимать какие-то шаги.

Одно интересное замечание относительно команды exec. Она работает только тогда, когда скрипты находятся в том же каталоге, что и веб-страница. Но очень часто из соображений безопасности запрещается записывать какие-либо скрипты в обычные каталоги, содержащие HTML-страницы. Что же делать? Можно обойти это ограничение, применив команду vi rtual:

<!-- linclude virtual="/cgi-bin/counter.cgi" -->
Эта команда строит URL относительно «виртуального сервера», с которым она в данный момент имеет дело. То есть подставляет автоматически имя домена и адрес сервера. В данном примере команда считает, что находится в корневом катало re серверного жесткого диска, она переходит в каталог cgi-bin и отыскивает там нужный скрипт.

СОВЕТ

Если сайт использует программное обеспечение сервера Apache, советую обратиться к специальным руководствам: http://httpd.apache.org/docs/howto/ssi.html. Обратите внимание на то, какие широкие возможности предоставляет на самом деле SSI. Вплоть до того, что можно определять переменные и выполнять некоторые условные операции!

Резюме

В этой главе вы познакомились с некоторыми продуктами сетевого мира. Они бывают бесплатные и платные, позволяют сделать сайт заметно живее за счет общения пользователей, более автоматизированным и просто более привлекатель-ным. Например, форум на сайте означает, что появится здоровая критика, сами пользователи будут подкидывать вам идеи дальнейшего развития. Вы сможете понять, чего не хватает, а какой информации слишком много. Чат — это возможность встретиться в эфире с посетителями сайта, среди которых могут быть и ваши знакомые, обсудить какие-то дела или просто провести время за виртуальным общением.

Здесь же мы обсудили особую тему статистики на сайтах. Вы узнали, куда обращаться, чтобы установить на своих страницах счетчики, информирующие вас о ко личестве посещений вашего сайта. Я упомянул также о специальных программах для анализа файлов журналов сервера. Статистика посещения — это неплохой индикатор того, как идут дела фирмы или сайта.

Наряду с CGI- и Java-решениями существуют вполне законные способы установить на своем сайте программы, которые реально исполняются на совершенно посторонних серверах — хостах. Это могут быть форумы, чаты, счетчики и т. д. Часто такие услуги бывают платными. Преимуществом подхода является то, что не нужно самостоятельно устанавливать, настраивать и поддерживать довольно сложные системы. Недостатки, впрочем, тоже весьма очевидны. В первую очередь они касаются слабого контроля над такого рода программами. И все же хост-приложения -это реальный способ запустить на своем сайте без особых проблем довольно слож ные программные средства.

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

В следующей главе вы узнаете, как выбирать сервер и как открыть веб-магазин.

Copyright © 2006-09.