|
Rozmiar: 3919
Komentarz: *** KREACJA ***
|
← Wersja 3 z 2018-06-24 20:08:16 ⇥
Rozmiar: 6584
Komentarz: zamiana konfiguracji na dołączane pliki z repozytorium (021-moin-*)
|
| Usunięcia zostały oznaczone w ten sposób. | Dodatki zostały oznaczone w ten sposób. |
| Linia 32: | Linia 32: |
| uwsgi_emperor="NO" | uwsgi_emperor="YES" |
| Linia 36: | Linia 36: |
| uwsgi_configfile="/usr/local/etc/uwsgi/uwsgi.ini" uwsgi_vassals_dir="/usr/local/etc/uwsgi/vassals" uwsgi_flags="-L --ini ${uwsgi_configfile}" |
|
| Linia 39: | Linia 42: |
| {{{#!highlight ini numbers=off [uwsgi] uid = uwsgi |
=== Pojedyncza aplikacja === Jeżeli uWSGI ma uruchomić pojedynczą aplikację, to wtedy wszystko zapisujemy w pliku uwsgi.ini: {{{#!highlight ini numbers=off [uwsgi] uid = www |
| Linia 47: | Linia 53: |
| chdir = /usr/local/share/moin/server | 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 === {{{#!highlight ini numbers=off [uwsgi] emperor = /usr/local/etc/uwsgi/vassals logto = /var/log/uwsgi/uwsgi.log }}} /!\ '''Bardzo ważne!!!''' /!\ Poniższa konfiguracja: {{{#!highlight ini numbers=off 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 ==== {{{#!highlight ini numbers=off [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 ==== {{{#!highlight ini numbers=off [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 |
| Linia 51: | Linia 112: |
| workers = 3 | workers = 1 |
| Linia 77: | Linia 138: |
| == wiki jako katalog == Poniższa konfiguracja dotyczy wiki jako katalogu. Jest to szczególnie przydatne w przypadku [[MoinFarmaNoweWiki|farmy wiki]]. |
|
| Linia 80: | Linia 143: |
| uwsgi_pass unix:/var/run/uwsgi/uwsgi.sock; | uwsgi_pass unix:/var/run/uwsgi/kb.bsdserwis.com.sock; |
| Linia 85: | Linia 148: |
| location ~ /favicon.ico { alias /usr/local/lib/python2.7/site-packages/MoinMoin/web/static/htdocs/favicon.ico; } location ~ /robots.txt { alias /usr/local/lib/python2.7/site-packages/MoinMoin/web/static/htdocs/robots.txt; } location ~ ^/(moin_static|portalwiedzy)[0-9]+/(.*) { alias /usr/local/lib/python2.7/site-packages/MoinMoin/web/static/htdocs/$2; } |
# 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; |
| Linia 106: | Linia 165: |
| == wiki jako root == W przypadku uruchamiania !MoinMoin jako root) konfiguracja jest nieco krótsza. {{{#!highlight nginx numbers=off 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 = 1. Jakiekolwiek zmiany w plikach konfiguracyjnych `wikiconfig.py` czy też poszczególnych `_wiki_farm.py` wymaga wykonania restartu demona `uwsgi` 1. Trzeba przyznać, że konfiguracja z wykorzystaniem [[FreshPorts:www/mod_wsgi4|www/mod_wsgi4]] jest zdecydowanie [[MoinModWsgi|bardziej przejrzysta]] |
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.
