Проблемы с настройкой МойнМойн на Debian Wheezy

У меня проблемы с настройкой одной вики МойнМойн на Debian Wheezy. Что мне нужно, так это вики на localhost/MyWiki (на самом деле мне все равно, где именно). Я следовал трем различным руководствам по установке: официальному README.Debian пакета Debian, Руководству по установке MoinMoin для Debian. и примечания по установке Oz123, все бесполезно.

Вот мои заметки по настройке (извините за длину, но, поскольку конфигурация не тривиальна, я подумал, что лучше быть конкретным):

1) Создайте и заполните /var/www/mywiki:

# mkdir /var/www/mywiki
# mkdir /var/lib/mywiki
# cp -r /usr/share/moin/data /usr/share/moin/underlay /var/lib/mywiki

2) Передать вики на Apache:

# chown -R www-data: /var/www/mywiki /var/lib/mywiki

3) Настройте Apache2:

Добавьте следующее как /etc/apache2/sites-available/mywiki:

<VirtualHost *:80>
    # NOTE: I changed the server name "wiki.example.org" to:
    ServerName localhost
    DocumentRoot /var/www/mywiki/
    Alias /moin_static194/applets/FCKeditor/ "/usr/share/fckeditor/"
    Alias /moin_static194/ "/usr/share/moin/htdocs/"
    ScriptAlias /MyWiki "/usr/share/moin/server/moin.cgi"
</VirtualHost>

4) Настройте МойнМойн:

Отредактируйте /etc/moin/mywiki.py, чтобы включить эти строки (ПРИМЕЧАНИЕ: после установки python-moinmoin, /etc/moin не содержал файла с именем mywiki.py, поэтому я сначала скопировал его с помощью поиска:

# cp $(find /usr/share/moin/ | grep -E "/mywiki\.py$") /etc/moin/

Затем я добавил/изменил файл, включив в него следующие строки:

    sitename = u'MyWiki' # [Unicode]
    data_dir = '/var/lib/mywiki/data'
    data_underlay_dir = '/var/lib/mywiki/underlay'
    superuser = [u"YourName", ]

Затем я добавил www-data localhost к /etc/moin/wikilist:

echo "www-data localhost" > /etc/moin/wikilist

5) Активируйте вики:

# a2ensite mywiki
# service apache2 reload

6) Посетите новую вики по адресу http://your.site/MyWiki/LanguageSetup, затем создайте учетную запись (имя соответствует указанному выше суперпользователю).

Однако посещение http://localhost/MyWiki/LanguageSetup дало следующую ошибку:

ConfigurationError

ImportError: No module named wikiconfig

Check that the file is in the same directory as the server script. If it is
not, you must add the path of the directory where the file is located to the
python path in the server script. See the comments at the top of the server
script.

Check that the configuration file name is either "wikiconfig.py" or the
module name specified in the wikis list in farmconfig.py. Note that the
module name does not include the ".py" suffix.

Итак, я ищу wikiconfig.py:

# find /usr/share/moin/ | grep -E "/wikiconfig\.py$"
... /usr/share/moin/config/wikiconfig.py

Прочитав wikiconfig.py, я обнаружил, что этот файл должен находиться в том же каталоге, что и data/ и underlay/. Поскольку я скопировал оба каталога в /var/lib/mywiki на шаге 1), я также скопировал туда этот скрипт:

# cp $(find /usr/share/moin/ | grep -E "/wikiconfig\.py$") /var/lib/mywiki

Я также изменил sitename = u'Untitled Wiki' на sitename = u'MyWiki', чтобы он соответствовал конфигурации в mywiki.py (шаг 4). Тем не менее, посещение http://localhost/MyWiki/LanguageSetup дало другую ошибку:

ConfigurationError

data_dir "/usr/share/moin/server/data" does not exist, or has incorrect ownership or
permissions.

Make sure the directory and the subdirectory "pages" are owned by the web
server and are readable, writable and executable by the web server user and
group.

It is recommended to use absolute paths and not relative paths. Check
also the spelling of the directory name.

Почему скрипт пытается найти data в /usr/share/moin/server/data, а не в /var/lib/mywiki/data, как я настроил в mywiki.py (см. шаг 4)? Пытаясь заставить МойнМойн работать больше раз, чем мне хотелось бы признать, я задался вопросом, может быть, кто-нибудь из вас, ребята, может указать на очевидную ошибку в моем пути...


person user3040975    schedule 27.01.2014    source источник


Ответы (1)


кажется, вы хотите сделать это с помощью пакета Debian:

установить пакет debian (apt-get install python-moinmoin или около того)

тогда конфигурации вики-фермы находятся в /etc/moin/*.py, потому что туда их помещает debian — внимательно отредактируйте их, но не удаляйте farmconfig.py (поскольку установка debian ЯВЛЯЕТСЯ конфигурацией вики-фермы, вы можете начать с 1 вики-файла). а позже добавить больше вики).

Debian должен иметь сценарии адаптера (например, moin.cgi или moin.wsgi), которые вставляют «/etc/moin» в sys.path (sys.path — это место, где python ищет код) — проверьте это, сообщение об ошибке, которое вы получите, говорит, что это не так. не находит wikiconfig.py (это вторая попытка после неудачной попытки найти farmconfig.py)

ваше впечатление, что wikiconfig.py должен находиться в том же каталоге, что и данные и подложка, неверно. он просто должен находиться в каталоге в sys.path.

Кстати, если вы не делаете это в стиле Debian и не используете apache для своих первых шагов в moin, вы можете просто скачать архив с http://moinmo.in/, распакуйте его и запустите ./wikiserver.py, и все заработает.

person Thomas Waldmann    schedule 10.02.2014