Kako namestiti MoinMoin na CentOS 7

MoinMoin je odprtokodni wiki motor, ki temelji na datotečnem sistemu, napisan v Pythonu. Danes se MoinMoin pogosto uporablja v odprtokodni skupnosti. Številni ponudniki, vključno z, vendar ne omejeno na Apache, Ubuntu, Debian in Python, so postavili svoje wikije z motorjem wiki MoinMoin.

V tej vadnici se boste naučili, kako nastaviti eno wiki mesto MoinMoin na primerku strežnika CentOS 7. Za servis MoinMoin bosta nameščena tudi Nginx in uWSGI.

Predpogoji

1. korak: Namestite in konfigurirajte Nginx

Preden lahko MoinMoin zaženete in zaženete, morate zanj nastaviti spletni strežnik in Nginx je odlična izbira za ta namen.

1) Zaradi priročnosti lahko namestite Nginx z repo EPEL YUM:

sudo yum install nginx -y

2) Konfigurirajte Nginx na naslednji način, da bo lahko deloval z uWSGI in MoinMoin.

Uporabite viurejevalnik besedil, da odprete glavno konfiguracijsko datoteko Nginx /etc/nginx/nginx.conf:

sudo vi /etc/nginx/nginx.conf

V http { }segmentu poiščite server { }segment, ki je povzet spodaj:

http {

...

server {
    listen       80 default_server;
    listen       [::]:80 default_server;
    server_name  _;
    root         /usr/share/nginx/html;

    # Load configuration files for the default server block.
    include /etc/nginx/default.d/*.conf;

    location / {
    }

...

2.1) Uporabite naslov IP strežnika, da določite ime strežnika za Nginx:

Poiščite vrstico:

server_name _;

Zamenjaj ga z:

server_name  203.0.113.1;

2.2) Konfigurirajte Nginx tako, da uporablja protokol uWSGI za komunikacijo:

Poiščite location / { }segment:

location / {
}

Vstavite dve vrstici, kot je prikazano spodaj:

location / {
    uwsgi_pass unix:///run/moin/moin.sock;
    include uwsgi_params;
}

Shrani in zapusti:

:wq!

3) Po želji lahko preizkusite spremenjeno konfiguracijo z naslednjim ukazom:

sudo nginx -t

Če nič ne gre narobe, bi morali videti izhod, kot je spodaj:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

4) Končno zaženite storitev Nginx in jo samodejno zaženete ob zagonu sistema:

sudo systemctl start nginx.service
sudo systemctl enable nginx.service

2. korak: Namestite in konfigurirajte MoinMoin

1) Uporabite naslednje ukaze za namestitev MoinMoin 1.9.9, najnovejše stabilne izdaje MoinMoin v času, ko sem napisal ta članek:

cd
wget http://static.moinmo.in/files/moin-1.9.9.tar.gz
tar -zxvf moin-1.9.9.tar.gz
cd moin-1.9.9
sudo python setup.py install --force --record=install.log --prefix='/opt/moin' --install-data=/srv

Po zagonu zgornjih ukazov bodo izvedljiva datoteka MoinMoin in vse knjižnične datoteke nameščene v /opt/moinimenik, v imenik pa bodo nameščeni podatki, uporabljeni za izdelavo lastnega enega samega wikija MoinMoin /srv/share/moin.

2) Ustvarite konfiguracijsko datoteko, imenovano moin.wsgiv podatkovnem imeniku MoinMoin, z uporabo datoteke predloge z istim imenom:

cd /srv/share/moin/
sudo cp server/moin.wsgi moin.wsgi

Odprite novo ustvarjeno konfiguracijsko datoteko z viurejevalnikom besedil:

sudo vi /srv/share/moin/moin.wsgi

Poiščite naslednjo vrstico:

import sys, os

Spodaj dodajte naslednji dve vrstici:

sys.path.insert(0, '/opt/moin/lib/python2.7/site-packages/')
sys.path.insert(0, '/srv/share/moin/')

Shrani in zapusti:

:wq!

3) Ustvarite drugo konfiguracijsko datoteko MoinMoin wiki, ki bo uporabljena za prilagajanje lastnega wikija:

cd /srv/share/moin
sudo cp config/wikiconfig.py wikiconfig.py

V tej datoteki lahko konfigurirate številne funkcije za vaš wiki MoinMoin, za zdaj pa morate samo nastaviti več funkcij, kot je prikazano spodaj.

Določite ime spletnega mesta (recimo, da je My First Wiki):

sudo sed -i 's/Untitled Wiki/My First Wiki/' /srv/share/moin/wikiconfig.py

Določite superuporabnika (recimo, da je admin):

sudo sed -i '/#superuser/a\    superuser = [u\"admin\", ]' /srv/share/moin/wikiconfig.py

Opomba: Tega uporabnika morate še vedno registrirati v spletnem vmesniku MoinMoin pozneje.

Onemogoči povratno iskanje DNS za pospeševanje:

sudo sed -i '$a\    log_reverse_dns_lookups = False' /srv/share/moin/wikiconfig.py

4) Spremenite lastništvo nameščenih datotek MoinMoin:

sudo chown -R nginx:nginx /srv/share/moin
sudo chown -R nginx:nginx /opt/moin

3. korak: Namestite in konfigurirajte uWSGI

UWSGI, ki deluje kot vozlišče med spletnim strežnikom Nginx in aplikacijo Python, je zasnovan tako, da zagotavlja najboljše zmogljivosti z uporabo visoko zmogljivega protokola uWSGI. Nato si oglejmo, kako namestiti in konfigurirati uWSGI za zagon MoinMoin.

1) Uporabite pip za namestitev uWSGI, kot sledi:

sudo yum install -y python-devel python-setuptools python-pip gcc
sudo pip install --upgrade pip
sudo pip install uwsgi

Če gre vse v redu, bi morali videti izhod, podoben:

...
Successfully installed uwsgi-2.0.15

2) Ko imate nameščen uWSGI, morate ustvariti imenik za shranjevanje dnevniških datotek uWSGI:

sudo mkdir /var/log/uwsgi
sudo chown nginx:nginx /var/log/uwsgi

3) Poleg tega morate ustvariti imenik za shranjevanje datoteke vtičnice MoinMoin:

sudo mkdir /run/moin
sudo chown nginx:nginx /run/moin

4) Ustvarite konfiguracijsko datoteko uWSGI uwsgi.iniv podatkovnem imeniku wikija MoinMoin in jo napolnite na naslednji način:

cat <<EOF | sudo tee -a /srv/share/moin/uwsgi.ini
[uwsgi]
uid = nginx
gid = nginx
socket = /run/moin/moin.sock
chmod-socket = 660
logto = /var/log/uwsgi/uwsgi.log

chdir = /srv/share/moin
wsgi-file = /srv/share/moin/moin.wsgi

master = true
processes = 3
max-requests = 200
harakiri = 30
vacuum = true
enable-threads = true
EOF

5) Če želite uporabiti systemd za upravljanje uWSGI, morate nastaviti datoteko enote systemd za uWSGI:

cat <<EOF | sudo tee -a /etc/systemd/system/uwsgi.service
[Unit]
Description=uWSGI instance to serve MoinMoin
After=syslog.target

[Service]
ExecStart=/usr/bin/uwsgi --ini /srv/share/moin/uwsgi.ini
RuntimeDirectory=uwsgi
Restart=always
KillSignal=SIGQUIT
Type=notify
StandardError=syslog
NotifyAccess=all

[Install]
WantedBy=multi-user.target
EOF

6) Zaženite storitev uWSGI in naj se samodejno zažene ob zagonu sistema:

sudo systemctl start uwsgi.service
sudo systemctl enable uwsgi.service

4. korak: Omogočite spletni dostop

Pravila požarnega zidu konfigurirajte na naslednji način, da lahko uporabniki obiščejo vaše spletno mesto wiki MoinMoin s spletnim brskalnikom:

sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload

5. korak: dostopajte do MoinMoin iz spletnega brskalnika

Zdaj je eno wiki mesto MoinMoin vzpostavljeno in deluje na vašem primerku strežnika CentOS 7.

Usmerite svoj najljubši spletni brskalnik na http://203.0.113.1, nato pa boste vstopili v spletni vmesnik MoinMoin. Prijavite se in prijavite kot superuporabnik, ki adminsmo ga omenili prej, nato pa lahko upravljate svojo stran wiki, kot želite.

Če je potrebno, lahko naredite več prilagoditev z urejanjem /srv/share/moin/wikiconfig.pydatoteke.

S tem je vadnica zaključena. Hvala za branje.

CentOS, vodniki za Linux, strežniške aplikacije, spletni strežniki

Pusti komentar

Vzpon strojev: aplikacije AI v resničnem svetu

Vzpon strojev: aplikacije AI v resničnem svetu

Umetna inteligenca ni v prihodnosti, tukaj je prav v sedanjosti. V tem blogu preberite, kako so aplikacije umetne inteligence vplivale na različne sektorje.

DDOS napadi: kratek pregled

DDOS napadi: kratek pregled

Ste tudi vi žrtev DDOS napadov in ste zmedeni glede načinov preprečevanja? Preberite ta članek, če želite rešiti svoja vprašanja.

Ste se kdaj vprašali, kako hekerji zaslužijo denar?

Ste se kdaj vprašali, kako hekerji zaslužijo denar?

Morda ste že slišali, da hekerji zaslužijo veliko denarja, a ste se kdaj vprašali, kako zaslužijo takšen denar? razpravljajmo.

Revolucionarni Googlovi izumi, ki vam bodo olajšali življenje.

Revolucionarni Googlovi izumi, ki vam bodo olajšali življenje.

Ali želite videti revolucionarne izume Googla in kako so ti izumi danes spremenili življenje vsakega človeka? Nato preberite v blogu in si oglejte Googlove izume.

Friday Essential: Kaj se je zgodilo z avtomobili, ki jih poganja umetna inteligenca?

Friday Essential: Kaj se je zgodilo z avtomobili, ki jih poganja umetna inteligenca?

Koncept samovozečih avtomobilov, ki zapeljejo na ceste s pomočjo umetne inteligence, so sanje, ki jih imamo že nekaj časa. A kljub številnim obljubam jih ni nikjer. Preberite ta blog, če želite izvedeti več…

Tehnološka singularnost: oddaljena prihodnost človeške civilizacije?

Tehnološka singularnost: oddaljena prihodnost človeške civilizacije?

Ker se znanost hitro razvija in prevzame veliko naših prizadevanj, se povečuje tudi tveganje, da se podvržemo nerazložljivi singularnosti. Preberite, kaj bi za nas lahko pomenila singularnost.

Funkcionalnosti slojev referenčne arhitekture velikih podatkov

Funkcionalnosti slojev referenčne arhitekture velikih podatkov

Preberite blog, če želite na najpreprostejši način spoznati različne plasti v arhitekturi velikih podatkov in njihove funkcionalnosti.

Razvoj shranjevanja podatkov – Infografika

Razvoj shranjevanja podatkov – Infografika

Metode shranjevanja podatkov so se lahko razvijale od rojstva podatkov. Ta blog pokriva razvoj shranjevanja podatkov na podlagi infografike.

6 neverjetnih prednosti pametnih naprav za dom v našem življenju

6 neverjetnih prednosti pametnih naprav za dom v našem življenju

V tem digitalno vodenem svetu so pametne naprave za dom postale ključni del življenja. Tukaj je nekaj neverjetnih prednosti pametnih naprav za dom o tem, kako naredijo naše življenje vredno življenja in poenostavijo.

Posodobitev dodatka macOS Catalina 10.15.4 povzroča več težav kot jih rešuje

Posodobitev dodatka macOS Catalina 10.15.4 povzroča več težav kot jih rešuje

Pred kratkim je Apple izdal macOS Catalina 10.15.4 dopolnilno posodobitev za odpravo težav, vendar se zdi, da posodobitev povzroča več težav, ki vodijo do opečenja računalnikov Mac. Preberite ta članek, če želite izvedeti več