Необходимая версия Apache: 1.3.27+, обязательно mod_rewrite.
Необходимо, чтобы firewall на сервере позволял
http-запросы с сервера к нему же
pop3-запросы к указанному при инсталляции POP-серверу (при необходимости mail-интеграции).
Настоятельно рекомендуется установка какого-либоPHP-акселератора, например, бесплатный Turck MMCache или платный Zend Performance Suite.
Инсталляция
Подготовка корректного SQL-кода
SQL-запросы для создания начальной версии базы находятся в папке /sql, файле full20040124.sql.
он нуждается в следующих действиях:
заменить все вхождения %NODE_URL% на адрес вашего узла смотрите как занесены другие узлы
заменить все вхождения %%NODE_ID%% на псевдоним Вашего узла (например, npj в случае нашей первой инсталляции).
Настройки конфигурационного файла БД в PHP
файл назвается config_db.php и наверняка вы самостоятельно в нём разберётесь
Настройки конфигурационного файла настроек в PHP
файл называется config_tunes.php
<?php $this->registration_mode = 2; // 0 / 1 / 2 -- режим саморегистрации пользователей (нельзя, с утверждением владельцем узла, свободная регистрация) $this->community_creation_mode = 2; // 0 / 1 / 2 -- режим регистрации сообществ пользователями (нельзя, с утверждением владельцем узла, свободная регистрация) $this->node_admins = "kuso kukutz"; // -- перечень тех пользователей, которым дадут права владельцев узла
$this->node_user = "node@npj"; // по какому адресу будет доступен журнал узла. Поменяйте только псевдоним узла, так будет правильнее. $this->node_mail = "box@server.ru"; // адрес для email-интеграции $this->node_mail_pop = "pop.server.ru"; // POP-сервер для email-интеграции $this->node_mail_login = "box@server.ru"; // логин на POP-сервер $this->node_mail_passw = "12345"; // пароль туда же $this->node_secret_word = "Смуглянка пышет барбарисом"; // секретная фраза, используемая для шифрования. Придумайте свою.
$this->node_menu = array( // здесь Вы, наверное, сами разберётесь, как задать МЕНЮ УЗЛА (вверху оно расположено) "node@:users" => "Пользователи", "node@:communities" => "Сообщества", "node@:workgroups" => "Рабочие группы", "node@:registracija" => "Регистрация", );
// Design & L10N/I18N -- всё, что касается оформления, отделённого от контента $this->theme = "absent"; // общая "тема" дизайна сайта (пока другой нет) $this->skins = array("minikui","criba"); // набор доступных "шкур" (других пока нет тоже) $this->message_set = "std"; // набор сообщений (для i18n) -- и здесь пока других нет
// HTTP configuration -- для того, чтобы куки у вас были уникальные для этого журнала и не пересекались $this->cookie_prefix = "npj_"; // префикс куков и форм логина/логаута $this->cookie_expire_days = 365; // сколько времени куку хранить $this->rewrite_mode=1; // используется ли dirty-urls / mod_rewrite / 404 {0,1,2 соотв.} !!ВНИМАНИЕ! 0 и 2 пока нерабочие!!
// content directories -- где у вас что лежит.
$this->base_url = ""; // базовый относительный урл проекта -- ставите в корень, оставьте пустым. Ставите не в корень, а, например, в папку dev - "dev/". Если ставите не в корень, не забудьте исправить htaccess в /images/userpics. $this->user_pictures_dir = "images/userpics/"; // где лежать будут юзерпики. относительно корня сайта, внимание. Обратите внимание, относительно корня сайта. // если ставите не в корень, то укажите путь от корня сайт к каталогу ресурсов тем -- как на примере ниже ставится в каталог "debug" $this->themes_www_dir = "debug/npj/themes/"; // базовый относительный урл для ресурсов темы ?>
Настройки файловой системы
В каталог юзерпиков (аватар) должна быть разрешена запись всем.
В каталог кэшированных шаблонов (_templates) должна быть разрешена запись всем
index.php должен быть разрешён на выполнение.
В каталог кэшированного RSS (rss) должна быть разрешена запись всем
Настройки системы аватар / юзерпиков
В каталоге юзерпиков на выполнение должны быть разрешены все PHP-файлы
Проверьте, что в каталоге юзерпиков есть .htaccess с 404 ошибкой и выключением мод-реврайта.
Error Document? 404 /images/userpics/404_mysql.php должен содержать правильный абсолютный путь в каталог юзерпиков
Действия сразу после закачки кода/базы
Создайте хотя бы одну учётную запись из числа тех, что вы занесли в список $this->node_admins конфигурационного файла.
вас должно после создания залогинить под этим именем. Все остальные действия делайте под этой учётной записью
Фольклор
Если вы хотите, то можете начать заполнять журнал узла напишите туда много страниц документации и помощи по вашему узлу.
наполните страницу node@npj:Welcome она будет показываться пользователями, которые только что залогинились.
измените наполнение страницы node@npj:HomePage это та страница, которую покажут тем, кто зайдёт в корень вашего узла, без подкаталогов.
нарожайте новых страниц
можете посоздавать страниц node@npj:User/PageName эти страницы будут создаваться в журналах регистрирующихся пользователей это забавно, по меньшей мере. Представьте, он только зарегистрируется, а у него уже там журнал весь выглядит как «йоу».
аналогично работает node@npj:Community/PageName
Вы конечно догадались, что PageName нужно заменять на адреса нужные вам.
и что @npj это всего лишь для примера, ага.
Создайте хотя бы одно сообщество. Назовите его, например, admin@node, где node псевдоним вашего узла
пусть это сообщество будет закрытого типа
вы его владелец. Вы можете добавить себя в модераторы сообщества сделайте это. Вам понравится.
Что уже есть
Так что же вы получите после инсталляции?
Вы получите узел (не являющийся пока частью NPJ-сети), на котором доступны следующие возможности:
создание новых пользователей/аккаунтов (так же называются журналами)
профили и аватары пользователей
создание в каждом журнале сообщений и документов
сообщения могут объединяться в ленты
документы имеют контроль версий
настройки прав доступа организованы для сообщений и документов по-разному:
в сообщениях можно указать от 1 до 4 групп ваших конфидентов, которые могут читать сообщение
в документах есть полноценная система ACL, причём для каждого документа есть до 8 различных «действий», права на которые можно настраивать по отдельности
создание сообществ и рабочих групп
сообщества предназначены для глобальной рубрикации сообщений по определённой тематике
рабочие группы предназначены для совместной работы по какой-то проблеме или теме
в сообщества можно только публиковать сообщения
в рабочих группах можно также создавать документы, а впоследствии и выстраивать иерархию взаимоотношений в РГ
объединение сообщений в ленты, такие как:
личная лента
лента корреспондентов
лента сообщества
лента всех пользователей узла
лента рубрики
лента анонсов
и многое другое
работа с wiki-разметкой, обычным текстом и WYSIWYG-редкатором
в дальнейшем появится возможность конвертации между этими форматами
рубрикация записей по древовидному рубрикатору
полнотекстовый поиск (с определёнными ограничениями)
подписка на любой документ, кластер документов, ленту и т.п.
публикация документов и сообщений через почтовый клиент
возможность ответа на комментарии прямо из почтового клиента
RSS-вид для любой ленты
анонсирование событий и документов
внедрение в документы тонко настраиваемых динамических элементов «экшнов», таких как:
ленты
списки последних изменений
списки документов в определённых кластерах или рубриках
ссылки на текущий документ
текст другого документа
списки пользователей
и так далее
поддержка единой схемы адресации любого элемента системы