Журнал LinuxFormat - перейти на главную

LXF150:tut3

Материал из Linuxformat
Перейти к: навигация, поиск

Содержание

MediaWiki: Сам себе Википедия

Это свободное ПО – база 65% публичных wiki. Освойте основы – и вашей креативности не будет преград! Бен Эверард вам все разъяснит.
Наш эксперт

Бен Эверард Бросил работу ИТ-консультанта, чтобы провести два года в Танзании за установкой в школах систем на базе Ubuntu. Теперь он проводит свое время в писательстве про свободное ПО и свои путешествия.

Скорая помощь

К каждой странице wiki привязана страничка обсуждения – на нее можно попасть по щелчку на вкладке Discussion в верхнем левом углу. Подробнее см. на http://localhost/wiki/index.php/Help:Talk_pages.

Wiki, кажется, оплели всю Всемирную паутину, в том числе Wikipedia – седьмой из наиболее посещаемых сайтов – и руководства пользователя большинства дистрибутивов Linux. По сути, wiki – это просто система быстрого создания и редактирования web-страниц, которые можно использовать для чего угодно: Интернет-энциклопедии, руководства или списка покупок.

На нашем уроке мы пройдем процесс создания вашей собственной wiki и покажем вам, как создать несколько страниц, чтобы помочь вам стать организованнее. Эти страницы – просто примеры: когда wiki у вас заработает и вы поймете, как редактировать страницы, вам откроются безграничные возможности.

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

Подготовка

Программное обеспечение MediaWiki работает на сервере LAMP. Если он у вас уже настроен, вы готовы к работе. Если нет – не волнуйтесь: настроить его несложно даже на обычном настольном ПК. L означает Linux, и тут сгодится любой дистрибутив, хотя если вы предназначаете его для данной задачи, серверный (например, Ubuntu Server) будет лучшим выбором. А, M и P обозначают Apache (web-сервер), MySQL (базы данных) и PHP (язык скриптов). Процесс установки несколько различен в разных дистрибутивах.

  • Debian и производные (Ubuntu, Mint и т. д.) Откройте менеджер пакетов Synaptic (если вы устояли против Unity, его можно найти в разделе Система > Администрирование) и выберите пакеты Apache2, PHP5, MySQL-server и php5-MySQL. Нажмите кнопку Применить, а при появлении запроса введите пароль администратора для MySQL – он вам потребуется при настройке wiki.
  • SUSE Установите пакет patterns-openSUSE-lamp_server, затем откройте YAST > Система > Системные службы (Уровень загрузки). Переключите радиокнопку на Эксперт. И для Apache, и для MySQL, выберите соответствующую строку и отметьте флажками три и пять, затем из выпадающего меню запустите сервис. Папка для web-сервера /srv/www/htdocs, нужно заменить на это /var/www в командах, приведенных в данном учебнике.
  • Fedora и Centos Выберите Приложения > Системные утилиты > Установка и удаление программ и установите пакеты httpd, mysql-server, php, php-mysql и ntsysv. После этого скомандуйте
sudo ntsysv

Прокрутите вниз до httpd и mysqld, отметьте их и нажмите кнопку ОК. Установятся web-сервер и сервер базы данных для запуска при загрузке системы. Теперь запустите серверы – это можно сделать из командной строки или через перезагрузку. Web-сервер использует папку /var/www/html, и ее нужно использовать вместо /var/www в этом учебнике.

  • Mandriva Linux Понадобится открыть Установка и удаление программ и установить пакет task-lamp. Соответствующие серверы установятся и настроятся на запуск при загрузке, но не запустятся. Теперь вы можете запускать серверы вручную из командной строки или перезагрузить компьютер.

Вам нужно будет заменить /var/www на /var/www/html в остальной части этого учебника, а также придется заменить sudo в командах на su -c, затем заключить команду в одиночные кавычки. Например, замените:

sudo tar zxvf mediawiki-1.17.0.tar.gz -C /var/www/

на

su -c ‘tar zxvf mediawiki-1.17.0.tar.gz -C /var/www/html’

Установив все это, откройте web-браузер и введите адрес http://localhost/. Если вы получили сообщение об ошибке, вам придется вернуться назад и исправить Apache. Если web-страница сообщит, что Apache работает, то вы готовы к установке MediaWiki. Запустите mysql_secure_installation из командной строки и следуйте инструкциям, чтобы обезопасить свою базу данных.

Скачайте архив с http://www.mediawiki.org/wiki/Download. Вы получите файл с именем MediaWiki-1.17.0.tar.gz (или более новую версию). Откройте терминал, перейдите в этот файл и распакуйте содержимое в web-папку, командой

sudo tar zxvf mediawiki-1.17.0.tar.gz -C

/var/www/ – папка по умолчанию для новых установок Apache на производных Debian, но если ваш сервер настроен иначе, надо будет изменить эту папку (см. выше, про установку LAMP в вашем дистрибутиве). Создастся новая папка /var/www/mediawiki-1.17.0, содержащая все скрипты и данные для wiki. Можно дать ей имя покороче – wiki, с помощью

sudo mv /var/www/mediawiki-1.17.0 /var/www/wiki

Откройте web-браузер, укажите в нем http://localhost/wiki, и вы должны получить страницу с сообщением «LocalSettings.php не найден». Нажмите на Настройка Wiki.

Выберите языки для wiki и нажмите Продолжить. Система проверит окружение, чтобы убедиться, что все необходимое ПО установлено и работает. По ходу вы получите несколько предупреждений, но если вы дождетесь ярко-зеленого сообщения «Условия проверены, вы можете перейти к установке MediaWiki», то все в порядке. Сообщение об ошибке красного цвета означает, что вам придется исправить соответствующие приложения, а потом уж двигаться дальше.

Нажмите на Продолжить, чтобы принять GPL и создать свою wiki. На следующем экране нужно ввести детали для подключения wiki к MySQL. Если у вас нет никаких особенных требований, можете оставить все параметры по умолчанию, кроме тех, что в нижней части окна: там ввеодится пароль для базы данных, который вы создали при запуске mysql_secure_server.

Следующая страница позволит выбрать несколько вариантов базы данных; самый важный из них – верхний, Использовать одну учетную запись для установки. Если снять это условие, возникнет дополнительный набор флажков для создания базы данных. Введите имя пользователя и пароль, а затем установите флажок Создать учетную запись если она еще не существует. Это предотвратит доступ wiki к вашей базе данных с правами администратора, что дает дополнительную защиту.

Нажав на кнопку Продолжить, вы можете ввести имя wiki (я назвал свою Benswiki, но имя может быть любым) и детали для администратора (это вы). Нажмите кнопку Далее еще раз, чтобы получить последнюю страницу опций.

Укажите здесь права пользователя как Традиционная wiki, то есть разрешите всем редактировать страницы, независимо от наличия учетной записи. По умолчанию, авторские права и лицензии означены как Подпись без лицензии, но если вы хотите обеспечить, чтобы ваша работа осталась свободной, измените это на Creative Commons Attribution Share Alike. Остальное сгодится по умолчанию, кроме Включить выгрузку файлов – это нужно указать; затем нажмите кнопки Далее, Продолжить и снова Продолжить для установки wiki, и еще раз Продолжить, чтобы скачать файл LocalSettings.php. Он содержит все параметры настройки, и его надо скопировать в должную папку – откройте терминал, перейдите туда, куда скачался файл, и введите

sudo cp LocalSettings.php /var/www/wiki

После этого можете нажать на Войдите в вашу Wiki, или наберите http://localhost/wiki в адресной строке браузера, чтобы открыть главную страницу сайта. Теперь у вас есть своя собственная wiki в рабочем состоянии, и можно начать собирать на ней информацию. Если ваш браузер показывает адрес localhost/wiki/index.php5/Main_Page, а не localhost/ wiki/index.php/Main_Page, нужно вставить 5 в URL-адреса, приведенные в оставшейся части нашего урока.

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

Размер картинки – 135 × 135 пикселей; более крупные иллюстрации будут обрезаны до него. Выбрав изображение (я взял фото с именем my_face.jpg), откройте терминал, перейдите в папку с изображением и скопируйте его в wiki/skins/common/images командой

sudo cp my_face.jpg /var/www/wiki/skins/common/images/

Затем отредактируйте путь к рисунку в файле LocalSettings.php. Чтобы открыть файл в nano с правами суперпользователя, введите в терминале

sudo nano /var/www/wiki/LocalSettings.php

В текстовом редакторе найдите строку, начинающуюся с $wgLogo (она должна быть примерно на уровне трети файла). Измените ее так, чтобы она указывала на файл:

$wgLogo = “$wgStylePath/common/images/my_face.jpg”;

Сохраните файл (Ctrl-O в nano) и обновите страницу в браузере. Ваше изображение должно теперь заменить логотип MediaWiki.

Добавление содержимого

Доступ с другого компьютера

Вы можете получить доступ к wiki с любого другого компьютера в той же сети, используя ссылку http://w.x.y.z/wiki, где w.x.y.z – IP-адрес машины. Узнать свой адрес вам поможет команда Ifconfig (возможно, потребуется использовать sudo).

Выведется по блоку текста для каждого сетевого интерфейса на компьютере. Найдите блок, относящийся к сети, из которой вы хотите получить к нему доступ, и вы увидите раздел в виде inet addr:w.x.y.z – w.x.y.z является IP-адресом этого компьютера. Если этот адрес меняется при каждой загрузке компьютера, надо назначить ему статический IP-адрес на маршрутизаторе.

Если ваш провайдер позволяет, можно получить доступ к wiki из Интернет. Для этого настройте проброс портов (иногда виртуальных серверов) на маршрутизаторе для перенаправления web-трафика на вашу wiki. Более подробные инструкции вы найдете в руководстве пользователя маршрутизатора. После этого можно использовать службу вроде DynDNS (http://dyn.com/dns/dyndns-free/) для получения имени хоста в форме youname.dyndns.org.

Скорая помощь

Кроме вкладки Редактировать, каждая страница содержит вкладку История – ее можно использовать для отката изменений.

Главная страница вашей wiki, как и все страницы, которые вы впоследствии создадите, имеет вверху два набора вкладок. В левом – два варианта: Страница и Обсуждение. В правом – три: Читать, Редактировать и Просматривать историю. Их можно использовать для отображения страниц позади страницы. Первым делом мы воспользуемся Edit – нажмите на эту вкладку, чтобы открыть форму редактирования.

Основная часть страницы Редактировать – текстовое поле, содержащее код для главной страницы на языке разметки wiki. Сначала удалите этот текст, потому что это просто пример, а затем дайте странице новый заголовок:

= Ben’s Wiki =

Пусть эта главная страница содержит ссылки на две другие страницы, содержащие регулярно обновляемую информацию:

 [[Список покупок]]
  
 [[Расписание]]
 

Обратите внимание на пустую строку – MediaWiki игнорирует одиночные «переводы каретки», и пустые строки нужны для разбивки текста на отдельные строки. Двойные квадратные скобки говорят системе, что это ссылки на новые страницы. Нажмите кнопку Сохранить страницу, чтобы запомнить изменения, и перейдите к новой главной странице. Вы увидите свой заголовок и две ссылки красного цвета. Красный цвет указывает, что они ссылаются на страницы, которые еще не существуют. Нажмите на ссылку Список покупок для создания страницы и переходите к редактированию раздела, чтобы добавить свои элементы:

 # молоко
 
 # яйца
 
 # хлеб
 

# велит системе форматировать это как нумерованный список. Благодаря этому нам не нужно вводить пустые строки между элементами. Нажав на Сохранить страницу, мы перейдем на страницу, где вы увидите свой список покупок.

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

В wiki все, включая боковую панель, хранится в виде страниц, которые можно редактировать. Укажите в браузере http://localhost/wiki/index.php/MediaWiki:Sidebar – откроется страница содержимого этой панели. Это особая страница, и прежде чем ее редактировать, нужно войти в систему – сделайте это, используя ссылку в правом верхнем углу страницы. Войдя в систему, переберитесь на вкладку Правка и добавьте строку:

** Список покупок | Список покупок

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

** http://mail.yahoo.com|Mail

Подставьте сюда сайт своей web-почты. Сохранив страницу, вы увидите два новых элемента на боковой панели.

Свежая установка MediaWiki снабжена всем программным обеспечением, но ни одного файла помощи в ней нет. Мы можем экспортировать их с web-сайта организации. Укажите в браузере www.mediawiki.org и перейдите к Панели инструментов (на боковой панели) > Спецстраницы. Перейдите на Инструменты страницы > Экспорт страниц и в поле Добавить страницы из категории введите Справка и нажмите кнопку Добавить. Появится список всех страниц помощи. Нажмите кнопку Экспорт, чтобы скачать их на компьютер в виде файла XML.

Откройте свою wiki в браузере и нажмите на кнопку Специальные страницы > Инструменты страницы > Импорт Страниц. Выберите только что скачанный файл и нажмите Загрузить файл. Справочные страницы добавятся в wiki, и вы можете получить к ним доступ, нажав Помощь в меню Навигации. Синтаксис разметки wiki можно найти в разделе Помощь > Редактирование > Форматирование.

А не здорово ли было бы модернизировать текстовый редактор, чтобы он помогал нам с форматированием? К счастью, мы можем добавить функциональность к нашей wiki с помощью расширений. Мы добавим две функции: одну – для обеспечения календаря, а другую – чтобы обзавестись текстовым редактором получше (этот продвинутый редактор работает с Firefox, Chrome, Epiphany и SeaMonkey, но не Konqueror).

Скачайте файл wikicalendar-1.16.tar.gz c https://github.com/christofdamian/wikicalendar и распакуйте его содержимое в папку с расширениями:

sudo tar zxvf wikicalendar-1.16.tar.gz -C /var/www/wiki/extensions

Затем откройте LocalSettings.php в текстовом редакторе (как вы делали при настройке wiki) и добавьте строку

require_once(“$IP/extensions/wikicalendar-1.16/calendar/Calendar.php”);

Откройте браузер и перейдите на страницу http://localhost/wiki/index.php/MediaWiki:Common.js; зайдите на вкладку Создать (если вы вышли из системы, необходимо снова войти) и введите текст:

// install the wikEd text editor
document.write(‘<script type=”text/javascript” src=”’
+ ‘http://en.wikipedia.org/w/index.php?title=User:Cacycle/wikEd.js’
+ ‘&action=raw&ctype=text/javascript”></’ + ‘script>’);

Затем нажмите Сохранить. Перейдя на главную страницу, нажмите на кнопку Расписание. Страница расписания создастся и откроется для редактирования. Вы обнаружите, что редактор теперь имеет подсветку синтаксиса, а также ряд кнопок для форматирования (если вы пользуетесь Wikipedia, вы получите тот же текстовый редактор, отметив WikEd на странице Настройки).

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

<calendar>
name=MyCal
view=months
months=12
</calendar>

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

Поход по магазинам [[Список покупок]]

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

Мы получили календарь, но было бы полезно видеть все наши задачи на текущую неделю. Вернитесь на главную страницу, перейдите на вкладку Правка и введите следующие ниже строки после уже добавленного содержания:

==This Week==
<calendar>
name=MyCal
view=week
skipempty=1
</calendar>

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

Желая избавиться от события, можно просто открыть вкладку Редактировать страницы и удалить текст, но сама страница останется, и календарь будет показывать событие (хотя и пустое). Чтобы убрать страницу полностью, нужно удалить ее. Для этого откройте страницу, перейдите на стрелку вниз рядом с Просмотром истории, выберите Удалить и нажмите кнопку Удалить страницу.

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

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


Шаг за шагом: Резервная копия системы

Большая часть данных для wiki хранится в базе данных MySQL, и ее резервное копирование немного сложнее, чем просто копирование файлов в надежное место. Но не волнуйтесь, хорошие люди в PhpMyAdmin создали инструмент, который все упрощает. Чтобы воспользоваться руководством, установите PhpMyAdmin. Для большинства пользователей это означает установку пакета phpmyadmin (Пользователям SUSE может потребоваться скачать его с software.opensuse.org).

1 Откройте браузер
Введите http://localhost/phpmyadmin и войдите в систему с именем пользователя и паролем для базы данных MySQL (как root). Это также может быть http://localhost/phpMyAdmin.
2 Выберите базу данных
Выберите базу данных, соответствующую wiki, из списка баз данных, приведенного слева.
3 Экспорт
Нажмите на вкладку Экспорт. На этой странице перечислены всякие таблицы, которые можно выбрать и вручную. Но мы лучше экспортируем все это целиком.
4 Скачать файл SQL
Нажмите кнопку Выбрать все, а затем Перейти. Загрузится SQL-файл. Сохраните его вместе с копией вашего файла LocalSettings.php в безопасном месте. Для воссоздания базы данных используйте вкладку Импорт.
Персональные инструменты
купить
подписаться
Яндекс.Метрика