Мандариновые войны
АрхивОдин из самых популярных и посещаемых ресурсов Интернета - форумы. Их называют "досками", "бордами", "конференциями", еще как-то, но сути это не меняет: Интернет-форум - динамически изменяющаяся страница, содержащая, как правило, заголовки сообщений со ссылками на полные тексты. Не следует путать форум с "Гостевой книгой" - "книга" предназначена для выражения кратких мнений по тому или иному поводу и не подразумевает развернутые ответы и комментарии. Чат (chat) тоже представляет собой несколько иной способ общения - наподобие мимолетного разговора. Идея же форума основана на активном обмене мнениями и возможности ознакомления с ними в дальнейшем других людей. Впрочем, не представляет особого труда написание программы, позволяющей превратить форум в гостевую книгу или даже в чат - хотя бы внешним видом.
Мы обсудим здесь некоторые аспекты функционирования такого публичного форума в Интернете, а также дадим несколько советов по его эффективному управлению и администрированию.
Начнем с выбора и установки программного обеспечения. Уже давно сложилась ситуация, при которой огромный пласт программ выделяется на софтовых серверах в отдельную категорию - "Internet", обычно имеющую энное количество подкатегорий. Среди них можно найти и такой специфический софт, как работающий на стороне сервера. Как правило, программная поддержка форумов реализуется на основе многоплатформных (то есть реализованных на большом количестве операционных систем) языков программирования, поскольку в Интернете редко кого интересует базовое серверное программное обеспечение. Чаще всего это - перловый скрипт, а поскольку на большей части серверов интерпретатор Perl установлен и вполне работоспособен, то обычно проблем с этой стороны не возникает. Раньше становилось серьезным вопросом получение места на сайте с возможностью запуска cgi-скриптов, однако сегодня существует уже большое количество бесплатных серверов с таким сервисом. Достаточно дать поисковой машине соответствующий запрос.
Можно назвать несколько популярных программ, осуществляющих необходимые операции для функционирования форума. Это ставший уже классическим, но довольно простой скрипт Мэта Райта (Matt Wright) WWWBoard, довольно долгое время пребывающий в состоянии версии 2.0a; UltraBoard, ERBoard, WebBBS, White Tiger WWW Board и т. д. Эти и другие программы при желании легко найти через те же поисковые машины. Они обычно предоставляются бесплатно или за символическую оплату, включают в себя исчерпывающее описание возможностей и настройки, работающий пример для наглядности. Иногда авторы включают в скрипты дополнительные возможности - индивидуальную настройку форума под каждого его участника, всевозможные ухищрения, призванные сделать общение на форумемаксимально удобным и привлекательным (например, выдачу списка новых сообщений при очередном посещении сайта, использование картинок для отражения эмоционального настроя автора письма), различные администраторские функции, позволяющие оптимальным образом конфигурировать и поддерживать форум. Здесь широта мысли зависит только от воображения программиста.
Как уже сказано, программное обеспечение форума полностью работает на стороне сервера. То есть все вычислительные, опознавательные, сохраняющие, структурирующие, поисковые и прочие операции производятся скриптом, запускаемым на сервере по факту какого-либо события. Поэтому не последним доводом к выбору того или иного скрипта является критерий производительности. Как правило, на достаточно мощном компьютере выполнение скрипта занимает десятые доли секунды, что, в общем-то, немного. Однако если форум очень активен, совокупное время выполнения скрипта может составить довольно большую величину. Руководствуйтесь этим соображением, поскольку, однажды выбрав программу, вы, скорее всего, в дальнейшем не захотите от нее отказаться.
При общении на форуме участник беседы заполняет некую форму, где указывает свое имя или псевдоним, какие-то дополнительные данные, обычно тему, кратко характеризующую все сообщение, и пишет само сообщение. После нажатия в форме кнопки, характеризующей согласие участника с высказанными мыслями, данные отсылаются на сервер, где анализируются и заносятся в базу данных. Теперь с ними может ознакомиться любой другой участник форума и при желании - ответить либо прокомментировать.
В этой связи необходимо упомянуть, что существует два принципиально различных способа организации Интернет-конференции с помощью скриптов. Первый - полностью скриптовой, то есть с помощью скриптов осуществляется не только запись и регистрация сообщений, но и вывод запрошенных писем, а также списка (основной страницы), равно как и прочие возможные операции. Тексты же и сопутствующая информация хранятся в базе данных. Здесь не представляет особых затруднений быстрое практически полное изменение дизайна форума. Пример - сеть форумов на сайте "Компьютерры".
Второй способ основан на сохранении каждого сообщения в отдельный файл. Скрипты выполняются только для записи и регистрации приходящих писем и, в отдельных случаях, реализации каких-то дополнительных функций. Преимущества второго способа заключаются в том, что прочитать сообщения можно будет в любом случае, даже если программная часть слетит, и отправление и прием писем станут невозможны. Отрицательный же момент состоит в том, что в результате записи избыточного повторяющегося кода html, который совершенно не обязательно сохранять в базу в первом случае, в каждом сообщении форум занимает довольно обширное место на жестком диске. Кроме того, на формат налагаются ограничения, обусловленные необходимостью четкого различения некоторых параметров сообщений для стабильного функционирования.
Следует вспомнить еще о третьем варианте, при котором у вас не возникнет никаких проблем с выбором и установкой форумного софта. Это платно или бесплатно предоставляемый публичный сервис, примером может служить сеть форумов на сайте forum.list.ru. В данном случае вам необходимо просто прочитать лицензионное соглашение, зарегистрироваться и начать обустраивать конференцию. Естественно, той широты возможностей, которые предоставляют первые два способа, не будет, однако и достоинства такого варианта очевидны.
Если у вас нет особых ограничений по наличию места на сайте, или форум не предполагает быть излишне активным, то выбирайте второй вариант. В противном случае вам больше подойдет первый, но при этом часто бывает нужна поддержка работы с базами данных, а это отдельный вопрос, который мы рассматривать не будем. По крайней мере, в первом случае при подходе места к концу можно зарезервировать еще, поскольку, например, бесплатные сервера лимиты на количество аккаунтов не предусматривают, а если и предусматривают, то ограничения легко обходятся.
Настройку и установку форума в рабочее состояние не будем обсуждать - как правило, они достаточно подробно рассматриваются в документации и особых трудностей не составляют. Единственно, нужно быть внимательным, чтобы не упустить важные моменты (например, в отношении использования в тексте символов CR и LF при редактировании файлов и загрузке их на сервер) и не мучиться потом, выискивая пропущенные детали.
Раскрутку форума тоже оставим на совести его держателя. Обычно бывает достаточно зазвать нескольких посетителей с других форумов, и потом постепенно установится более или менее стабильное количество посетителей в день, причем текучка обычно бывает процентов 30-40. Многие приходят и, не найдя ничего для себя интересного, уходят. Но некоторые остаются. Они-то и составляют своего рода костяк общения, завсегдатаев форума.
Рассмотрим пару вопросов, неизбежно появляющихся на любых форумах, независимо от их направленности, характера и активности.
Одна из самых серьезных проблем, возникающих у модератора, - периодическое нашествие вредителей, коих в Интернете куда больше, чем в реальном мире. При попадании в сеть человек начинает чувствовать себя свободнее, наивно полагая, что отследить его действия принципиально невозможно, и, прикрываясь выдуманным именем, осуществляет какие-либо действия, направленные, в частности, на нанесение вреда форуму. Этот вред может заключаться в банальном оскорблении других участников, размещении текстов или изображений непристойного содержания, каких-то других, более изощренных моментах. И если нанести вред достаточно легко, то убрать его последствия бывает обычно труднее. Поэтому один или два настойчивых идиота могут совершенно парализовать работу форума, заполнив его мусором, среди которого теряются действительно интересные сообщения.
Одним из выходов может стать модерирование участника форума на уровне IP-адреса или cookie. И в том, и в другом случае запрет обойти не так уж сложно, в первом варианте достаточно зайти на форум через прокси-сервер. Впрочем, список прокси-серверов тоже можно указывать как запрещенный. Что касается "cookie", то здесь включается идентификация на уровне посылок браузером текстовой информации, что "излечивается" редактированием либо удалением соответствующих файлов.
Разумеется, возможно ограничение доступа на уровне сервера, но это не представляется приемлемым выходом, поскольку лишь в некоторых случаях администратор форума является одновременно администратором сервера, а обращаться каждый раз к сисадмину нереально - у него есть другие заботы.
Универсальное и окончательное решение этой проблемы не найдено до сих пор, но можно применением довольно простых средств сильно облегчить себе жизнь. Как правило, развитое программное обеспечение форума такие средства предоставляет. Хулиганство не может длиться долго, в противном случае можно выяснить IP-адрес хулигана и сообщить его провайдеру. Провайдеры обычно со вниманием относятся к такого рода информации.
Распространена проблема входа под чужим ником, когда, используя псевдоним (ник) или имя уважаемого участника форума, некто от его лица делает заявления, в целом похожие или нет по стилю на реального владельца ника, но ему не принадлежащие и порочащие оного либо вводящие других в заблуждение. После появления на форуме оскорбленного владельца начинается скандал, обмен любезностями и обещаниями набить морду, что напоминает "мандариновые войны" - банальное перекидывание мандариновыми корками - никому не больно, зато можно всласть наругаться.
Порой ситуация способна дойти до уровня логики нескольких порядков, когда плагиатор ника начинает убеждать прочих в своей подлинности, а действительный обладатель оного - разубеждать. В таком случае начинается полный хаос, а если в перебранки встревают новички, не встречавшие еще подобных случаев, то ссора переходит на новую ступень развития.
Задача модератора - не допустить подобного безобразия, поскольку оно отнимает много времени и места.
Впрочем, проблема довольно легко решается элементарным введением парольного входа. Тогда, кстати, можно разобраться и с недопущением вредителей описанного выше рода - можно, например, перевести форум в режим приватности, когда сообщения принимаются только от уже зарегистрированных участников.
Описанное показывает, что создание и содержание форума - дело, хотя и не сложное, но ответственное, требующее от администратора неустанной заботы и наблюдения. Это довольно обременительно, однако такие хлопоты стоят удовлетворения, которое приносит результат. Ведь в итоге вы способствуете общению людей, их знакомству, а в дальнейшем - возможно - даже дружбе. Поверьте, это очень важно.
Успехов!
Об авторе: Эдуард Мухутдинов - аспирант кафедры неорганической химии Казанского государственного технологического университета. Автор программы поддержки форума White Tiger WWW Board и администратор нескольких форумов на ее основе. http://wtiger.ncport.ru.