wiki

Почему MediaWiki?

  1. Потомучто его разрабатывает и использует WikiMedia (разработчики WikiPedia);
  2. Базы данных MySQL, PostgreSQL, SQLite;
  3. Поддерживает memcached и Squid;
  4. YAML, HTML и TeX;
  5. Оптимизированна под поисковики, есть расширения и темы, полная русская локализация.

Установка

  • Нам понадобиться PHP5 и выше (плюс PCRE и SPL), СУБД MySQL или PostgreSQL.
  • Качаем архив и распаковываем в директорию где будет у нас находится вики-раздел сайта;
  • Переходим по пункту “set up the wiki”;
  • Заполняем анкетные и конфигурационные данные (Название, язык, бд, кеш, администратор и т.д.);
  • Все, готово!

Настройка

Перемещаем файл LocalSettings.php (<mediawiki>/config/LocalSettings.php) в корень вики-раздела (<mediawiki>/);

В LocalSettings.php находятся основные настройки вики-движка, например директива $wgUseAjax (true/false) отвечает за AJAX, то есть если true то будет вики-движком использоваться AJAX (по возможности конечно).

Добавьте в LocalSettings.php:

# Включаем поддержку AJAX
$wgUseAjax = true;

# Логотип
$wgLogo = '/images/your-logotype.gif';

# Запрет незарегистрированным участникам редактировать статьи
$wgEmailConfirmToEdit = true;

Расширения

Расширения находятся по адресу http://www.mediawiki.org/wiki/Category:Extensions/ru, со структурой категорий разобраться не так уж легко, поэтому рекомендую использовать поиск.

Устанавливать расширения очень просто, надо распаковать архив в каталог <mediawiki>/extensions.

И напоследок, 3 полезных расширения…


CategoryTree

Предназначена для вывода “дерева категорий” в раздел “Спецстраницы/Списки страниц/Дерево категорий” и в сайдбар.

Добавьте в LocalSettings.php:

# CategoryTree - дерево категорий
require_once("{$IP}/extensions/CategoryTree/CategoryTree.php");

# Максимум потомков (ветвей в ноде)
$wgCategoryTreeMaxChildren = 1000;

# AJAX использовать?
$wgCategoryTreeDynamicTag = true;

# Корневая категория, вместо "Root" - свою категорию.
$wgCategoryTreeSidebarRoot = 'Root';

# Режим для AJAX
$wgCategoryTreeSidebarOptions['mode'] = 10;

Для перемещения меню категорий в сайдбаре, я изменил шаблон MonoBook (именно он используеться по умолчанию):

Файл <mediawiki>/skins/MonoBook.php строка 177

после

if ( !isset( $sidebar['LANGUAGES'] ) ) $sidebar['LANGUAGES'] = true;

и до

foreach ($sidebar as $boxName => $cont) {

вставить:

$sidebar = array(
'categorytree-portlet'=>$sidebar['categorytree-portlet'],
'SEARCH'=>$sidebar['SEARCH'],
'navigation'=>$sidebar['navigation'],
'TOOLBOX'=>$sidebar['TOOLBOX'],
'LANGUAGES'=>$sidebar['LANGUAGES']);

то есть, мы просто поменяли местами порядок следования меню.


FCKeditor

Тут их даже две версии:

  1. FCKeditor extension by Mafs
  2. FCKeditor extension by the FCKeditor team and Wikia

Я использовал вторую, типа официальная всетаки!
Добавьте в LocalSettings.php:

# FCKeditor
require_once( "{$IP}/extensions/FCKeditor/FCKeditor.php" );

Я пробовал еще TinyMCE расширение, однако оно сильно нестабильно (Release status: unstable), пользоваться невозможно :(

Еще есть дополнительные опции:

# Ссылки на переключение с рич-редактора на стандартный
$wgDefaultUserOptions['riched_use_toggle'] = 1;

# По умолчанию отключен рич-редактор
$wgDefaultUserOptions['riched_start_disabled'] = 1;

# Появиться ссылка для возможности открытия в новом окне рич-редактор
$wgDefaultUserOptions['riched_use_popup'] = 1;

# Помнить ваш выбор (рич/стандарт)
$wgDefaultUserOptions['riched_toggle_remember_state'] = 1;

В данном случае “рич-редактор” — это FCKeditor.


MindMap

Еще есть FreeMind и WikiMindMap, я их на деле не использовал, но судя по описания очень даже ничего!

Диаграмма связей, известная также как интеллект-карта, (англ. Mind map) — способ изображения процесса общего системного мышления с помощью схем. Также может рассматриваться как удобная техника альтернативной записи.

http://ru.wikipedia.org/wiki/Mindmapping


P.S. Восстановленный пост.


Комментарии (57) на запись «Установка и настройка MediaWiki + 3 полезных расширения»

» Трекбеки скрыты, показать их?
  1. Linkdump #7 | CTAPbIu_MABP's BLOG | 23.02.2009 в 02:01

    [...] Установка и настройка MediaWiki + 3 полезных расширения как и обещал Адворду — публикую на него ссылку [...]

  2. Алексей | 13.03.2009 в 18:30

    Нужна помощь.

    Создание новой версии сайта www.divingfinder.com на движке www.mediawiki.org

    Сама Вика, основной функционал, основная безопасность, языки,

    перенесенная дата уже будут стоять. Будет необходима доводка —

    настройка, работа с шаблонами. ТЗ — по запросу.

    Подобный сайт уже существовал и работал на этом движке ранее.

    если интересует возможность подработать — обращайтесь плс с сайта или по епочте.

  3. rourendortild | 18.03.2009 в 05:30

    Мне понравилось. Столько полезного материала. Тока обновляйтесь больше )

  4. adw0rd | 18.03.2009 в 13:14

    rourendortild, ок

  5. FreeBSD. Порты, пакеты и обновление ПО | Мастерская интернет-разработчика | 25.03.2009 в 16:15

    [...] mediawiki [...]

  6. Grrr! | 29.03.2009 в 01:01

    Слушайте, ребят, меня уже пол недели мучает вопрос а как координально изменить дизайн вики?

    Я так понимаю, что основной хтмл-контент содержится в Monobook.tpl, так?

    Но в нём пхп-переменные так завуалированы?

    Если знаете, помогите плз.

  7. adw0rd | 29.03.2009 в 01:44

    В MediaWiki, как и в большинстве PHP движков используется механизм шаблонов/тем, в которой намешан PHP. Даже более того, не только в PHP так, а повсеместно.

    Только средствами верстки — не возможно управлять логикой вывода. Таковы технологии, ждем прогресса :)

    Вам необходимо либо самому верстать тему, либо править существующие шаблоны. На фриланс-биржах думаю вам помогут ;)

  8. Алексей | 30.03.2009 в 13:21

    Тормозит все ужасно. Повключали все возможности кеширования и сокращения функционала, какие можно — тормоза остались. Кто нибудь сталкивался с такой проблемой?

  9. adw0rd | 30.03.2009 в 13:54

    Не знаю, что-то не замечал тормозов... А какие технические характеристики сервера? И какое ПО используется для кеширования?

  10. Denis | 02.04.2009 в 22:36

    > А какие технические характеристики сервера?

    > И какое ПО используется для кеширования?

    Процессор: Intel Celeron 2.40GHz

    Опер память: 1Gb

    Типичная картина, наблюдаемая в top:

    Mem: 1027604k total, 976648k used, 50956k free, 428k buffers

    Swap: 1959920k total, 12016k used, 1947904k free, 383372k cached

    load average редко опускается ниже 1.

    Кеширование производится встроенными средствами MediaWiki, php-акселераторов на сервере нет. Memcached тоже нет.

    Без php-акселераторов и memcached конечно туговато, но чтобы при 3-5 параллельных запросах все они отваливались по таймауту...

    И еще: все процессы httpd весят по 40-60 мегабайт. Это нормально?

  11. adw0rd | 03.04.2009 в 11:22

    > И еще: все процессы httpd весят по 40-60 мегабайт. Это нормально?

    Думаю вполне нормально, у меня на одном из серверов 160 MB... Это же обрабатывающие процессы, они постоянно обрабатываю соединения, а не плодятся при каждом...

    На самом деле я не знаю почему у вас виснет, очень странно, попробуйте указать в апаче:

    MaxClient 10

    и расскажите что получилось...

    А другие системы, например WordPress или Drupal тормозят? Потестите.

  12. Алексей | 27.08.2009 в 10:39

    Подскажите как установить MediaWiki в корень сайта? Чтобы безпроблемно запускаля по ссылке www.sait.ru Какие необходимы настройки.

  13. adw0rd | 27.08.2009 в 10:46

    Я уже не помню что надо писать при установке, у вас возникли трудности? Какие вы пути вписали?

  14. Алексей | 28.08.2009 в 06:54

    Есть бесплатный хостинг, находится сайт по пути на хостинге: 1/www/установленная вики/

    Установка прошла замечательно, базы встали, переместил файл локал сеттинг на уровень вверх, но при открытии главной страницы ничего не появляется — чистая страница.

  15. adw0rd | 28.08.2009 в 14:49

    Вы тут «1/www/» создайте файл test.php и впишите туда

    echo dirname(__FILE__);

    после чего в LocalSettings поправьте путь до «то что вывело в test.php» + /путь до вики/

  16. Алексей | 28.08.2009 в 20:50

    Извините за недопонимание, но объясните подробнее вот точный путь до движка вики /home/vshosts/hosts/u10470/мойсайт/www/здесьвики как всё прописать? И в каком месте в LocalSettings поправить путь и как он будет выглядеть?

  17. adw0rd | 28.08.2009 в 21:07

    Насколько я помню там вообще не надо указывать в настройках путь до вики, у вас сейчас не запускается? А если вместо вики поместить туда index.php, то запускается то что в index.php?

  18. Алексей | 28.08.2009 в 21:26

    В строке браузера отображается после открытия вот что: «http://мойсайт/index.php/Заглавная_страница» и больше ничего на странице нет.

  19. adw0rd | 28.08.2009 в 21:31

    Так значит вики то у вас нормально работает, вы просто в конфиге где-то ошиблись видимо. Включите режим вывода ошибок, скорее всего у вас проблема с подключением к БД.

  20. Алексей | 28.08.2009 в 21:51

    Вроде всё проверил в LocalSettings в строках относящихся к mysql всё верно. Подскажите как включить режим вывода ошибок.

  21. adw0rd | 28.08.2009 в 22:00

    В .htaccess укажите

    php_flag display_errors On

  22. Алексей | 29.08.2009 в 11:09

    В общем поплясал я вокруг, да около и базы проверил и всё прочее, на локальном Денвере встаёт всё на пять, на хостинге как говорится — болт.

  23. adw0rd | 29.08.2009 в 11:17

    А что на хостинге? Какие ошибки?

  24. Алексей | 29.08.2009 в 19:22

    И где же это посмотреть, простите за неосведомлённость?

  25. adw0rd | 30.08.2009 в 01:45

    Я же сказал как включить вывод ошибок, после включения заходите на страницу и там будет ошибка

  26. Алексей | 30.08.2009 в 13:30

    Именно так всё прописал в файле .htaccess о страница всё равно чистая выходит...

  27. adw0rd | 30.08.2009 в 16:55

    Тогда установите уровень вывода ошибок ru2.php.net/manual/en/fun...or-reporting.php

  28. SemKA | 28.11.2009 в 15:09

    Добрый день, спасибо за статью. Установил по вашей схеме «CategoryTree» всё тоже самое прописал в конфиге, но теперь в Sidebar (e) появился раздел «Категории» и в нём «Категория «root» не найдена.»? как это поправить, где эта категория root и как в этот блок что то добавлять?

  29. adw0rd | 28.11.2009 в 21:24

    wiki.adw0rd.ru/index.php/...D0%B8%D1%8F:Root вот тут посмотрите, думаю станет понятно :)

  30. Andrey | 19.12.2009 в 19:15

    А у меня она глючит (глотает символы) по черному, не знаю что и делать ...

    Хостинг мой. Пара тяжелых битриксов у меня там летает на ура.

    Нормально

    Глотает символы ...

  31. adw0rd | 20.12.2009 в 12:20

    Andrey, какая версия? Вы пробовали ставить другие версии?

  32. Andrey | 20.12.2009 в 15:48

    Версия с сайта стабильный релиз:

    MediaWiki 1.15.1

    PHP 5.2.6 (apache2handler)

    MySQL 5.0.51a-log

  33. Andrey | 20.12.2009 в 19:14

    Другие версии не ставил. А зачем ? Эта ведь стабильная должна быть ?

  34. adw0rd | 21.12.2009 в 00:10

    Хоть и стабильная, но это не значит что приложение 100% работает правильно

  35. rxs | 24.12.2009 в 17:18

    Как я понимаю, первоисточник статьи здесь, а по ссылке maxyc.ru/2009/09/mediawiki-install-setup/ всего лишь copy-paste.

  36. adw0rd | 24.12.2009 в 18:34

    Действительно, даже не знал что успели скопипастить :)

    Мне кажется там весь контент такой...

  37. Alex | 03.01.2010 в 20:34

    Уважаемыи, спасибо за статью!

    Расскажите подробнее как установить WikiMindMap.

    Очень необходимая для меня штука! Десктопные фримаинд и т.д. не подходят.

    Будьте любезны!

  38. adw0rd | 03.01.2010 в 21:29

    Извините, но как я и сказал «я их на деле не использовал». А у вас возникли уже какие-то проблемы?

  39. Иван | 29.01.2010 в 01:14

    Добрый вечер!

    Установил на хостинг движок МедиаВики, после установки на Заглавной странице набор ссылок и отсутствие дизайна. web-safety.info

    Загрузил тестовую картинку-логотип, прописал её в Локальных настройках, не отображается...собственно не совсем понял где она должна появится)

    Так и должно быть? Либо где то ошибка?

    Как настроить дизайн подобный Википедии?

    Заранее благодарю за помощь.

    С уважением,

    Иван

  40. adw0rd | 29.01.2010 в 09:41

    А что у вас со скином? Вообще оформления нет...

    pyha.ru/wiki/ — вот страничка, на ней видно логотип (pyha.ru/wiki/images/logotype.png) в верхнем левом углу.

  41. Алексей | 02.04.2010 в 10:18

    Здравствуйте! Скачал движок по вашей ссылке, но файла LocalSettings.php в папке config там нет.

  42. adw0rd | 02.04.2010 в 10:59

    Да, действительно. А раньше был...

  43. lis | 09.04.2010 в 12:25

    Установил wiki по умолчанию, в католог site.ru/wiki/ но когда захожу путь меняется на site.ru/index.php/бла бла бла

    как исправить?

  44. adw0rd | 09.04.2010 в 12:33

    www.mediawiki.org/wiki/Manual:Short_URL

  45. Тамогавк | 18.04.2010 в 19:24

    Может кому пригодится.

    Установка счетчика.

    Регистрируемся в системе счетчика копируем код и создаем файл counter.php

    Ставим файл в категорию /skins

    Меняем код, для этого находим в MonoBook.php следующий код

    if($this->data['copyrightico']) { ?>
    <div id=”f-copyrightico"><?php $this->html('copyrightico') ?></div>
    <?php    }

    это логотип лицензии в левом углу (footer), меняем его на код

    ?><div id="f-copyrightico"><?php include("counter.php"); ?></div><?php

  46. Тамогавк | 18.04.2010 в 19:39

    Еще совет, перед тем как менять LocalSettings.php копируйте не исправленный фай на компьютер. Для избежания исправления ошибок. Если у Вас пропало оформление, разметка или при запросе страницы выдает ошибку, значит где то в LocalSettings.php напортачили.

    При появлении подобного загружайте на сервер файл LocalSettings.php заменяя измененный.

    Сохраняйте LocalSettings.php после каждого удачного апгрейда=)

  47. Vici | 21.04.2010 в 07:09

    Скажите, пожалуйста, если в LocalSettings.php установлены создание стр. и правка только зарегистрированных участников на вике, сохраняется где-то их e-mail, указанный при регистрации? и куда автоматом отправляется письмо с подтверждением о ней.

  48. Vici | 21.04.2010 в 07:14

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

  49. adw0rd | 21.04.2010 в 12:50

    Я не знаю, посмотрите в БД

  50. rxs | 08.05.2010 в 18:12

    adw0rd, я думаю что Вас путают в вопросе с файлом LocalSettings.php.

    Изначально файла нет в директории config.

    Но он появляется там после прохождения этапов web-установки.

    Проверено на MediaWiki 1.15.1.

  51. rxs | 08.05.2010 в 18:27

    Тамогавк я вообще оригинальный LocalSettings.php храню переименованный на хостинге. И, там же, переименнванную предпоследнюю версию.

  52. rxs | 09.05.2010 в 11:54

    Замечание про $wgEmailConfirmToEdit

    # Запрет незарегистрированным участникам редактировать статьи

    $wgEmailConfirmToEdit = true;

    Включить этот параметр действительно следует, но вот смысл его другой.

    /**
     * Should editors be required to have a validated e-mail
     * address before being allowed to edit?
     */
    $wgEmailConfirmToEdit=false;

    т.е. требует проверенный email редактора.

  53. Piter | 10.05.2010 в 17:42

    Не получается запретить гостям редактировать страницы. Позапрещал уже вроде всё что можно, толку нет. Вписал вот такие строки:

    # Запрет незарегистрированным участникам редактировать статьи

    $wgEmailConfirmToEdit=true;

    #Restrict anonymous editing

    $wgGroupPermissions['*']['edit'] = false;

    $wgGroupPermissions['*']['createpage'] = false;

    $wgGroupPermissions['*']['createtalk'] = false;

    $wgGroupPermissions['*']['writeapi'] = false;

    #hide user tools for anonymous (IP) visitors

    $wgShowIPinHeader = false;

  54. Никоай | 29.05.2010 в 12:53

    Извините за такой вопрос, но как установить расширение? PhpShellом не получается...

  55. adw0rd | 29.05.2010 в 13:09

    Простым копированием данных, самое простой транспорт — ftp, потомучто доступен на всех хостингах.

  56. Максим | 25.06.2010 в 02:13

    Добрый день.

    Пользую mediawiki в связке с openldap — всё отлично работает и права назначает кому какие нужно и пользователей пускает каких нужно, вообще пёрфект, но вот постигла проблематика. Если в имени пользователя есть знак подчеркивания «_», что-то типа vasya_pupkin, то wiki пытается искать в базе ldap пользователя vasya pupkin, то есть без знака «_». Естественно такого пользователя она там не находит, и само собой пользователю в авторизации отказывается. Внимание вопрос — подскажите пожалуйста куда копать? Свежую версию extention — LdapAuthentication скачал и положил где жила предыдущая. Поиск по нету пока к сожалению результатов. Буду признателен за любую информация, вдруг решали уже такую проблематику. Заранее спасибо.

  57. adw0rd | 25.06.2010 в 17:39

    Ну я бы провел дебаг, поставил точки контрольные и посмотрел где подменяется на пробел. Либо напишите разработчикам.

    Других не вижу способов...

Оставить комментарий