Si të instaloni MediaWiki me Nginx në Ubuntu 16.04


Në këtë tutorial, unë do t'ju tregoj hap pas hapi se si të instaloni MediaWiki me serverin e internetit Nginx në Ubuntu 16.04. Unë do t'ju udhëzoj se si të instaloni dhe konfiguroni pirgun LEMP për instalimin e MediaWiki, duke përfshirë gjenerimin dhe konfigurimin e SSL të ri pa pagesë Letsencrypt për sigurinë e MediaWiki.

MediaWiki është një nga softuerët më të njohur wiki që fillimisht u zhvillua për përdorim në Wikipedia. Është një softuer pa pagesë dhe me burim të hapur i shkruar në gjuhën e programimit PHP dhe është bërë softueri më dominues në kategorinë wiki. I zhvilluar fillimisht nga Magnus Manske në 2002, mjeti tani është në versionin 1.30. MediaWiki është përdorur nga shumë kompani/organizata të mëdha duke përfshirë Nginx, Intel, Novell dhe NASA.

Çfarë do të bëjmë:

  1. Instaloni Nginx në Ubuntu 16.04
  2. Instaloni dhe konfiguroni PHP-FPM
  3. Instaloni dhe konfiguroni bazën e të dhënave MySQL
  4. Shkarko dhe konfiguro MediaWiki
  5. Krijoni SSL Letsencrypt të ri në Ubuntu 16.04
  6. Konfiguro Nginx Virtual Host për instalimin e MediaWiki
  7. Instalim i bazuar në ueb të MediaWiki
  8. Konfiguro MediaWiki i Skinit të paracaktuar

Kushtet paraprake

  • Serveri Ubuntu 16.04
  • Privilegjet e rrënjës

Hapi 1 - Instaloni Nginx në Ubuntu 16.04

Hapi i parë që duhet të bëjmë për instalimin e MediaWiki është instalimi i serverit të internetit. Pra, në këtë seksion, ne do të instalojmë serverin në internet Nginx, do të nisim shërbimin Nginx dhe më pas do ta mundësojmë që të nisë automatikisht në nisjen e sistemit.

Përpara se të instaloni serverin në ueb, lidheni me serverin tuaj, përditësoni të gjitha depot dhe më pas përditësoni.

sudo apt update
sudo apt upgrade -y

Tani instaloni Nginx duke përdorur komandën e mëposhtme apt.

sudo apt install nginx -y

Pas kësaj, filloni nginx dhe aktivizoni atë të nisë në nisjen e sistemit.

systemctl start nginx
systemctl enable nginx

Tani kontrolloni portën HTTP duke përdorur netstat dhe sigurohuni që të shihni portin 80 që përdoret nga Nginx.

netstat -plntu

Ueb serveri Nginx është instaluar në Ubuntu 16.04.

Hapi 2 - Instaloni dhe konfiguroni PHP-FPM

Tani do të instalojmë PHP-FPM në Ubuntu 16.04. Dhe ne do të përdorim PHP 7.0 për instalimin e MediaWiki.

Instaloni PHP dhe PHP-FPM (së bashku me të gjitha shtesat e kërkuara) duke përdorur komandën apt më poshtë.

sudo apt install imagemagick php7.0-fpm php7.0-intl php7.0-xml php7.0-curl php7.0-gd php7.0-mbstring php7.0-mysql php-apcu

Dhe pasi të përfundojë instalimi, duhet të ndryshojmë disa konfigurime të paracaktuara për PHP-FPM. Duhet të rrisim madhësinë maksimale të skedarit të ngarkimit si dhe konfigurimet e kufirit të memories.

Shkoni te drejtoria e konfigurimit PHP dhe modifikoni skedarin php-fpm php.ini duke përdorur vim.

cd /etc/php/7.0
vim fpm/php.ini

Rrisni konfigurimin upload_max_filesize në 20M dhe rrisni limitin e kujtesës në 128M.

upload_max_filesize = 20M
memory_limit = 128M

Ruaje dhe dil.

Tani rinisni shërbimin PHP-FPM dhe aktivizoni atë që të nisë automatikisht në kohën e nisjes duke përdorur komandat e mëposhtme systemctl.

systemctl restart php7.0-fpm
systemctl enable php7.0-fpm

PHP-FPM tani po funksionon në Ubuntu 16.04 dhe funksionon nën skedarin e çorapit. Kontrollojeni duke përdorur komandën netstat më poshtë.

netstat -pl | grep php

Dhe do të merrni skedarin e çorapit PHP-FPM siç tregohet më poshtë.

Hapi 3 - Instaloni dhe konfiguroni bazën e të dhënave MySQL

MediaWiki ruan të gjitha të dhënat dhe përmbajtjen në bazën e të dhënave, dhe është në përputhje me një sërë serverësh të bazës së të dhënave. Për këtë udhëzues, ne do të përdorim bazën e të dhënave MySQL për instalimin e MediaWiki.

Në këtë hap, ne do të instalojmë serverin e bazës së të dhënave MySQL dhe më pas do të krijojmë një bazë të dhënash dhe përdorues të ri për MediaWiki.

Instaloni bazën e të dhënave MySQL në Ubuntu 16.04 duke përdorur komandën e mëposhtme apt.

sudo apt install mysql-server mysql-client -y

Do t'ju kërkohet fjalëkalimi rrënjësor MySQL - shkruani fjalëkalimin tuaj dhe shtypni Enter.

Përsëritni fjalëkalimin tuaj rrënjësor MySQL.

Instalimi i MySQL ka përfunduar. Tani nisni MySQL dhe aktivizoni atë të nisë në kohën e nisjes duke përdorur komandat systemctl më poshtë.

systemctl start mysql
systemctl enable mysql

Më pas, ne do të krijojmë një bazë të dhënash dhe përdorues të ri për MediaWiki. Ne do të krijojmë një bazë të dhënash të re të quajtur mediawikidb me përdoruesin mediawiki dhe fjalëkalimin mypassword.

Lidhu me serverin mysql duke përdorur komandën mysql më poshtë.

mysql -u root -p

Tani krijoni bazën e të dhënave dhe përdoruesin me pyetjet e mëposhtme të MySQL.

create database mediawikidb;
grant all privileges on mediawikidb.* to 'localhost' identified by 'mypassword';
flush privileges;
exit;

Serveri MySQL i instaluar në Ubuntu 16.04 dhe baza e të dhënave për instalimin e MediaWiki është krijuar.

Hapi 4 - Shkarkoni dhe konfiguroni MediaWiki

Për këtë udhëzues, ne do të përdorim versionin më të fundit të MediaWiki 1.30. Dhe përpara se të shkarkojmë MediaWiki, duhet të instalojmë disa paketa në server.

Ekzekutoni komandën apt më poshtë për të instaluar paketa të reja.

sudo apt install composer git zip unzip -y

Tani krijoni direktori të re mediawiki dhe klononi kodin burimor të mediawiki në atë drejtori.

mkdir -p /var/www/mediawiki
git clone https://gerrit.wikimedia.org/r/p/mediawiki/core.git /var/www/mediawiki

Më pas, shkoni te drejtoria /var/www/mediawiki dhe instaloni disa varësi PHP të nevojshme për instalimin e MediaWiki duke përdorur komandën e kompozitorit.

cd /var/www/mediawiki
composer install --no-dev

Pasi të përfundojë instalimi i të gjitha varësive të PHP-së, ndryshoni pronarin e drejtorisë mediawiki në përdorues dhe grup www-data.

chown -R www-data:www-data /var/www/mediawiki

Versioni më i fundit i MediaWiki 1.30 shkarkohet në drejtorinë /var/www/mediawiki.

Hapi 5 - Gjeneroni SSL Letsencrypt në Ubuntu 16.04

Për arsye sigurie, ne do të ekzekutojmë MediaWiki nën lidhjen HTTPS. Të gjitha lidhjet HTTP do të ridrejtohen automatikisht në HTTPS. Dhe për këtë qëllim, ne kemi nevojë për certifikata SSL. Ne do të përdorim SSL falas nga Letsencrypt.

Për të gjeneruar certifikata të reja SSL nga Letsencrypt, ne duhet të instalojmë linjën e komandës letsencrypt në server. Përdorni komandën e mëposhtme për ta bërë këtë:

sudo apt install letsencrypt -y

Pas përfundimit të instalimit, ndaloni serverin e internetit Nginx.

systemctl stop nginx

Më pas, gjeneroni certifikata të reja SSL duke përdorur komandën letsencrypt më poshtë.

letsencrypt certonly

Do t'ju kërkohet adresa juaj e emailit - përdoret për njoftimin e rinovimit të certifikatës.

Pra, shkruani adresën tuaj të emailit dhe zgjidhni OK.

Për Letsencrypt TOS (Kushtet e Shërbimit), zgjidhni Agree dhe shtypni Enter.

Dhe tani shkruani emrin tuaj të domenit wiki, i imi është wiki.hakase-labs.co.

Dhe kur të ketë përfunduar gjithçka, do të merrni rezultatin siç tregohet më poshtë.

Certifikatat SSL për instalimin e MediaWiki janë krijuar në drejtorinë /etc/letsencrypt/live.

Hapi 6 - Konfiguro hostin virtual të MediaWiki Nginx

Stacki LEMP (Linux, Nginx, MySQL dhe PHP-FPM) për instalimin e MediaWiki është vendosur dhe kodi burimor i MediaWiki është shkarkuar në drejtorinë /var/www/mediawiki.

Në këtë hap, ne do të krijojmë një skedar të ri host virtual Nginx mediawiki, dhe më pas do të aktivizojmë hostin virtual.

Shkoni në direktorinë e konfigurimit Nginx dhe krijoni një skedar të ri virtual host mediawiki duke përdorur vim.

cd /etc/nginx/
vim sites-available/mediawiki

Ngjitni hostin virtual të mëposhtëm Nginx për konfigurimin e MediaWiki atje.

# HTTP Request will be Redirected to the HTTPS
server {
    listen 80;
    listen [::]:80;
    server_name wiki.hakase-labs.co;
    return 301 https://$host$request_uri;
}

# HTTPS Configuration
server {

    listen 443 ssl;
    listen [::]:443;
   
    server_name wiki.hakase-labs.co;
    root /var/www/mediawiki;

    index index.php;
    autoindex off;

    # SSL Certificate Configuration
    ssl_certificate /etc/letsencrypt/live/wiki.hakase-labs.co/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/wiki.hakase-labs.co/privkey.pem;

    client_max_body_size 5m;
    client_body_timeout 60;

    location / {
        try_files $uri $uri/ @rewrite;
    }

    location @rewrite {
        rewrite ^/(.*)$ /index.php?title=$1&$args;
    }

    location ^~ /maintenance/ {
        return 403;
    }

    # PHP Configuration
    location ~ \.php$ {
        fastcgi_pass unix:/run/php/php7.0-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
        include snippets/fastcgi-php.conf;
    }

    location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
        try_files $uri /index.php;
        expires max;
        log_not_found off;
    }

    location = /_.gif {
        expires max;
        empty_gif;
    }

    location ^~ ^/(cache|includes|maintenance|languages|serialized|tests|images/deleted)/ {
        deny all;
    }

    location ^~ ^/(bin|docs|extensions|includes|maintenance|mw-config|resources|serialized|tests)/ {
        internal;
    }

    # Security for 'image' directory
    location ~* ^/images/.*.(html|htm|shtml|php)$ {
        types { }
        default_type text/plain;
    }

    # Security for 'image' directory
    location ^~ /images/ {
        try_files $uri /index.php;
    }

}

Ndryshoni sipas kërkesës/rastit tuaj dhe më pas ruajeni dhe dilni.

Më pas, aktivizoni një host të ri virtual mediawiki duke përdorur komandën e mëposhtme.

ln -s /etc/nginx/sites-available/mediawiki /etc/nginx/sites-enabled/

Testoni konfigurimin e nginx dhe sigurohuni që nuk ka ndonjë gabim. Pastaj rinisni shërbimin.

nginx -t
systemctl restart nginx

Një port i ri HTTPS 443 hapet në serverin tuaj - kontrolloni atë duke përdorur komandën netstat në mënyrën e mëposhtme.

netstat -plntu

Treguar më poshtë është rezultati.

Hapi 7 - Instalimi i bazuar në ueb të MediaWiki

Tani hapni shfletuesin tuaj të internetit dhe shkruani emrin e domenit tuaj në shiritin e adresave.

Dhe do të ridrejtoheni te lidhja HTTPS.

Klikoni lidhjen e konfigurimit të wiki në faqe për të konfiguruar MediaWiki.

- Konfigurimi i gjuhës

Zgjidhni gjuhën tuaj, ne do të zgjedhim anglisht dhe klikoni Vazhdo.

- Kontrolli i mjedisit

Dhe tani, MediaWiki do të kryejë kontrollin e mjedisit. Sigurohuni që të merrni rezultatin siç tregohet më poshtë.

Klikoni Vazhdo për instalim.

- Konfigurimi i bazës së të dhënave

Tani për konfigurimin e bazës së të dhënave. Në fushën e emrit të bazës së të dhënave, shkruani mediawikidb me prefiksin wiki_. Më pas, shkruani përdoruesin e bazës së të dhënave mediawiki dhe fjalëkalimin mypassword.

Dhe klikoni Vazhdo.

- Cilësimet e bazës së të dhënave

Sa i përket cilësimeve të bazës së të dhënave, thjesht lini atë si parazgjedhje dhe klikoni Vazhdo.

- Krijo një përdorues administratori

Tani duhet të krijojmë llogarinë e administratorit. Shkruani përdoruesin, fjalëkalimin dhe emailin tuaj siç tregohet më poshtë.

Dhe klikoni Vazhdo.

- Konfigurimi shtesë i MediaWiki

Dhe ju duhet të shkoni në faqen rreth konfigurimit shtesë të MediaWiki.

Lëreni atë me vlerat e paracaktuara dhe klikoni Vazhdo.

- Instalimi i MediaWiki

Tani klikoni Vazhdo përsëri për të instaluar MediaWiki.

Dhe do të arrini në faqen e ngjashme me atë të treguar më poshtë.

Klikoni sërish Vazhdo.

Tani do të shihni faqen që thotë se instalimi ka përfunduar. Do t'ju kërkohet të shkarkoni skedarin e ri LocalSettings.php - shkarkoni skedarin.

Dhe ngarkoni skedarin LocalSetting.php në direktorinë mediawiki të serverit /var/www/mediawiki. Gjithashtu, mos harroni të ndryshoni pronarin e skedarit në www-data user and group.

scp LocalSettings.php :/var/www/mediawiki/
chown -R www-data:www-data /var/www/mediawiki

Tani, kthehuni te faqja e instalimit të MediaWiki të shfletuesit tuaj të internetit dhe klikoni lidhjen e hyrjes në wiki. Do t'ju thuhet se MediaWiki është instaluar me serverin e internetit Nginx në serverin Ubuntu 16.04.

Hapi 8 - Shkarkoni dhe konfiguroni lëkurën e paracaktuar

Në këtë fazë, instalimi i mediawiki ka përfunduar. Dhe në këtë hap, ne do të konfigurojmë lëkurën/temën e paracaktuar.

Shkoni te drejtoria /var/www/mediawiki/skins dhe klononi Vektorin e parazgjedhur të lëkurës.

cd /var/www/mediawiki/skins/
sudo git clone https://gerrit.wikimedia.org/r/mediawiki/skins/Vector

Tani modifikoni skedarin LocalSettings.php duke përdorur redaktorin vim.

vim /var/www/mediawiki/LocalSettings.php

Dhe ngjisni kodin e mëposhtëm php drejt fundit të skedarit.

wfLoadSkin( 'Vector' );

Kjo eshte. Ruaje dhe dil.

Kthehuni në shfletuesin tuaj të internetit dhe rifreskoni faqen MediaWiki. Sigurohuni që të merrni MediaWiki me lëkurë Vector siç tregohet më poshtë.

Instalimi dhe konfigurimi i MediaWiki me serverin e internetit Nginx në Ubuntu 16.04 ka përfunduar me sukses.

Referenca

  • https://www.mediawiki.org/wiki/