Un mémo sur comment installer manuellement MediaWiki sur un serveur Debian Jessie avec Nginx, php7 et MariaDB.
Installation du serveur Web complet : Nginx, Php7 et MariaDB
- Ajout des dépôts :
- Nginx :
echo "deb http://nginx.org/packages/mainline/debian/ jessie nginx" > /etc/apt/sources.list.d/nginx.list wget -O - http://nginx.org/keys/nginx_signing.key | apt-key add -
- Php7 :
echo "deb http://packages.dotdeb.org jessie all" > /etc/apt/sources.list.d/dotdeb.list wget https://www.dotdeb.org/dotdeb.gpg && apt-key add dotdeb.gpg
apt update
apt install nginx php7.0-fpm php7.0-mysql php7.0-mbstring php7.0-xml php7.0 mariadb-server
Téléchargement de MediaWiki
- Se rendre dans le répertoire
/var/www/html/
:
cd /var/www/html/
wget https://releases.wikimedia.org/mediawiki/1.28/mediawiki-1.28.1.tar.gz
tar xzvf mediawiki-1.28.1.tar.gz
mv mediawiki-1.28.1 mediawiki
chown -R www-data:www-data mediawiki
Configurer PHP 7
- Modification de php.ini :
nano /etc/php/7.0/fpm/php.ini
cgi.fix_pathinfo=0
nano /etc/php/7.0/fpm/pool.d/www.conf
- odifier la ligne 36
listen = /run/php/php7.0-fpm.sock
par
listen = 127.0.0.1:9000
Configurer Nginx en TLS avec Let’s Encrypt
Cette partie n’est pas obligatoire mais fortement conseiller pour avoir une connexion sécurisée sur le wiki. Pour Configurer Nginx en écoute sur le port 443 (TLS) il faut paser par l’étape d’installer Let’s Encrypt ou se créer un certificat TLS auto-signé.
- Installation de Let’s Encrypt :
- Ajout du dépôt backports :
echo "deb http://ftp.us.debian.org/debian/ jessie-backports main" > /etc/apt/sources.list.d/backports.list
- Mettre à jour la liste des paquets :
apt update
python-certbot
:apt install -t python-certbot jessie-backports
certbot certonly -d domaine.tld --rsa-key-size 4096 --standalone
openssl dhparam -out /etc/ssl/private/dhparams.pem 4096
Configuration du serveur block nginx sur le port TLS par défaut
- Créer le serveur block nginx pour le MediaWiki :
nano /etc/nginx/conf.d/mediawiki.conf
le contenu :
server { listen 80; server_name wiki.domaine.tld; return 301 https://wiki.domaine.tld$request_uri; } server { listen 443 ssl http2; server_name wiki.domaine.tld; root /var/www/html/mediawiki; index index.html index.php; client_max_body_size 5m; client_body_timeout 60; ssl_certificate /etc/letsencrypt/live/wiki.domaine.tld/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/wiki.domaine.tld/privkey.pem; ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH"; ssl_protocols TLSv1.2; ssl_prefer_server_ciphers on; ssl_ecdh_curve secp384r1; ssl_session_cache shared:SSL:10m; ssl_dhparam /etc/ssl/private/dhparams.pem; ssl_buffer_size 16k; ssl_session_tickets off; ssl_stapling on; ssl_stapling_verify on; ssl_trusted_certificate /etc/letsencrypt/live/wiki.domaine.tld/fullchain.pem; resolver 127.0.0.1 208.67.222.222; location / { try_files $uri $uri/ @rewrite; } location @rewrite { rewrite ^/(.*)$ /index.php?title=$1&$args; } location ^~ /maintenance/ { return 403; } location ~ \.php$ { include fastcgi_params; fastcgi_pass 127.0.0.1; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } 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/ { deny all; } location /dumps { root /var/www/html/mediawiki/local; autoindex on; } }
systemctl restart nginx systremctl restart php7.0-fpm restart
Installation de MediaWiki
- Ouvrir un navigateur internet et saisir l’url du serveur web : https://wiki.domaine.tld et cliquer sur ‘Set up the wiki’ :
- Choisir les paramètres de langages et cliquer sur « Continuer »:
- Vérification liées à l’environnement, si tout est ok cliquer sur « Continuer » :
- Configuration de la base de données :
- Paramètres de la base de données :
- Configurer le nom du wiki et son utilisateur :
- Installation :
- Installation terminée, mais faut encore télécharger le fichier
LocalSettings.php
et le placer à la racine de l’installation de mediawiki sur le serveur : - Copier le fichier
LocalSettings.php
sur le serveur :
scp ~/Téléchargements user@wiki.domaine.tld:/var/www/html/mediawiki/
Error 500 juste après ‘Set up the wiki’ :'(
hummm, si j’ai le temps je refais l’install pour voir ou ça coince…