Wydrukuj tę dokumentację Pokaż jako slajdy
Spis Treści
Konfiguracja MoinMoin z wykorzystaniem uWSGi
Poniższa konfiguracja zapewnia poprawną pracę MoinMoin w oparciu o uwsgi.
Instalacja uwsgi
Z wykorzystaniem własnego repozytorium pakietów należy zainstalować uWSGI:
pkg install -Uy uwsgi
Przygotowanie katalogów
W celu uruchomienia serwera uWSGI należy przygotować katalogi:
mkdir -p /var/log/uwsgi /var/run/uwsgi/
touch /var/log/uwsgi/uwsgi.log
chown uwsgi:www /var/run/uwsgi/
chown -R uwsgi:uwsgi /var/log/uwsgi
rc.conf
Za pomocą własnego repozytorium konfiguracji można zainstalować konfirugację startową (w szczególności w przypadku jails). Albo też w pliku /etc/rc.conf wykonać następującą konfigurację:
uwsgi_enable="YES"
uwsgi_logfile="/var/log/uwsgi/uwsgi.log"
uwsgi_pidfile="/var/run/uwsgi/uwsgi.pid"
uwsgi_emperor="YES"
uwsgi_socket="/var/run/uwsgi/uwsgi.sock"
uwsgi_socket_mode="660"
uwsgi_socket_owner="uwsgi:www"
uwsgi_configfile="/usr/local/etc/uwsgi/uwsgi.ini"
uwsgi_vassals_dir="/usr/local/etc/uwsgi/vassals"
uwsgi_flags="-L --ini ${uwsgi_configfile}"
uwsgi.ini
Pojedyncza aplikacja
Jeżeli uWSGI ma uruchomić pojedynczą aplikację, to wtedy wszystko zapisujemy w pliku uwsgi.ini:
[uwsgi]
uid = www
gid = www
socket = /var/run/uwsgi/uwsgi.sock
chmod-socket = 660
logto = /var/log/uwsgi/uwsgi.log
chdir = /var/www/htdocs/virtuals/kb.bsdserwis.com/
wsgi-file = bin/moin.wsgi
master
workers = 3
max-requests = 200
harakiri = 30
die-on-term
Wiele aplikacji
[uwsgi]
emperor = /usr/local/etc/uwsgi/vassals
logto = /var/log/uwsgi/uwsgi.log
Bardzo ważne!!!
Poniższa konfiguracja:
master
workers = 2
max-requests = 200
harakiri = 30
die-on-term
musi się znaleźć w konfiguracji każdej z aplikacji. W przeciwnym przypadku w systemie "mnożą się" procesy uwsgi i mogą doprowadzić do zapaści serwera.
wiki uruchamiane jako katalog
[uwsgi]
uid = www
gid = www
socket = /var/run/uwsgi/kb.bsdserwis.com.sock
chmod-socket = 660
;;logto = /var/log/uwsgi/uwsgi.log
chdir = /var/www/htdocs/virtuals/kb.bsdserwis.com/
wsgi-file = bin/moin.wsgi
master
workers = 2
max-requests = 200
harakiri = 30
die-on-term
wiki uruchamiane jako root
[uwsgi]
uid = www
gid = www
socket = /var/run/uwsgi/wiki.domena.tld.sock
chmod-socket = 660
;;logto = /var/log/uwsgi/uwsgi.log
chdir = /var/www/htdocs/virtuals/intranet.domena.tld
wsgi-file = moin.wsgi
master
workers = 1
max-requests = 200
harakiri = 30
die-on-term
Uruchomienie usługi
service uwsgi start
Konifguracja moin.wsgi
# a1) Path of the directory where the MoinMoin code package is located.
# Needed if you installed with --prefix=PREFIX or you didn't use setup.py.
sys.path.insert(0, '/usr/local/lib/python2.7/site-packages')
# a2) Path of the directory where wikiconfig.py / farmconfig.py is located.
# See wiki/config/... for some sample config files.
sys.path.insert(0, '/var/www/htdocs/virtuals/intranet.kpkoncept.local')
# scie/zka w przypadku farmwiki
sys.path.insert(0, '/var/www/htdocs/virtuals/kb.bsdserwis.com/config')
Konfiguracja nginx
wiki jako katalog
Poniższa konfiguracja dotyczy wiki jako katalogu. Jest to szczególnie przydatne w przypadku farmy wiki.
location /fi/ {
include uwsgi_params;
uwsgi_pass unix:/var/run/uwsgi/kb.bsdserwis.com.sock;
uwsgi_modifier1 30;
uwsgi_param SCRIPT_NAME /fi;
}
# konfiguracja dotycząca favicon.ico może być zablokowana - favicon.ico jest "podawane" poprzez <link rel.../>
# (chyba, że ma być jednak nadpisana)
#
include 021-moin-favicon.conf;
include 021-moin-robots.conf;
include 021-moin-static.conf;
include 004-dot-ht.conf;
include 004-err-page-404.conf;
include 004-err-page-5xx.conf;
include 004-pillaging-dvcs.conf;
include 005-no-logging.conf;
include 005-x-frame.conf;
include 014-acmele.conf;
wiki jako root
W przypadku uruchamiania MoinMoin jako root) konfiguracja jest nieco krótsza.
location / {
include uwsgi_params;
uwsgi_pass unix:///var/run/uwsgi/wiki.domena.tld.sock;
uwsgi_modifier1 30;
}
# konfiguracja dotycząca favicon.ico może być zablokowana - favicon.ico jest "podawane" poprzez <link rel.../>
# (chyba, że ma być jednak nadpisana)
#
include 021-moin-favicon.conf;
include 021-moin-robots.conf;
include 021-moin-static.conf;
include 004-dot-ht.conf;
include 004-err-page-404.conf;
include 004-err-page-5xx.conf;
include 004-pillaging-dvcs.conf;
include 005-no-logging.conf;
include 005-x-frame.conf;
include 014-acmele.conf;
Uwagi ogólne
Jakiekolwiek zmiany w plikach konfiguracyjnych wikiconfig.py czy też poszczególnych _wiki_farm.py wymaga wykonania restartu demona uwsgi
Trzeba przyznać, że konfiguracja z wykorzystaniem www/mod_wsgi4 jest zdecydowanie bardziej przejrzysta
Źródła w sieci internet
(c) 2004 - 2026 BSD Serwis Krzysztof Stryjek. W przypadku błędów, poprawek proszę kontaktować się z administratorem wiki.

Gdy trzeba dołączyć inną (pod)stronę https://moinmo.in/HelpOnMacros/Include https://moinmo.in/HelpOnParsers
Nieprawidłowe argumenty "pagename, heading, level, from="regex", to="regex", sort=ascending|descending, items=n, skipitems=n, titlesonly, editlink"!