Tutorial ini akan menunjukkan kepada Anda cara menginstal MediaWiki di Ubuntu 20.04 . MediaWiki adalah perangkat lunak backend yang mendukung Wikipedia. Ini open-source gratis dan perangkat lunak wiki yang paling banyak digunakan saat ini. Pengguna MediaWiki yang terkenal termasuk Wikipedia.org dan wikia.com.
Anda dapat menggunakan MediaWiki untuk membuat situs wiki pribadi atau publik Anda sendiri. MediaWiki memiliki banyak ekstensi berguna yang telah dibuat baik untuk Wikipedia maupun untuk situs wiki lainnya.
Prasyarat
MediaWiki adalah program yang ditulis dalam PHP. Untuk mengikuti tutorial ini, pertama-tama Anda harus menginstal LAMP atau LEMP stack di server Ubuntu 20.04 Anda.
Jika Anda lebih suka Apache server web, lalu siapkan tumpukan LAMP.
- Cara Memasang LAMP Stack di Server/Desktop Ubuntu 20.04
Jika Anda lebih suka Nginx server web, lalu siapkan tumpukan LEMP.
- Cara Memasang LEMP Stack (Nginx, MariaDB, PHP7.4) di Ubuntu 20.04 LTS
Anda juga memerlukan nama domain. Saya mendaftarkan nama domain saya dari NameCheap karena harganya murah dan mereka memberikan perlindungan privasi whois gratis seumur hidup.
Setelah menginstal LAMP atau LEMP stack, baca instruksi berikut untuk menginstal MediaWiki.
Langkah 1:Mengunduh MediaWiki
Unduh versi stabil terbaru dari MediaWiki:
wget https://releases.wikimedia.org/mediawiki/1.35/mediawiki-1.35.1.tar.gz
Ekstrak arsip ke /var/www/
.
sudo mkdir -p /var/www/ sudo tar xvf mediawiki-1.35.1.tar.gz -C /var/www/
Ganti nama direktori.
sudo mv /var/www/mediawiki-1.35.1 /var/www/mediawiki
Kemudian kita perlu menginstal beberapa ekstensi PHP yang dibutuhkan oleh MediaWiki.
sudo apt install php7.4-mbstring php7.4-xml php7.4-fpm php7.4-json php7.4-mysql php7.4-curl php7.4-intl php7.4-gd php7.4-mbstring texlive imagemagick
Jika Anda menggunakan server web Apache, Anda perlu me-restart Apache.
sudo systemctl restart apache2
Selanjutnya, kita perlu menginstal dependensi eksternal melalui Composer (pengelola dependensi PHP).
sudo apt install composer cd /var/www/mediawiki/ sudo composer install --no-dev
Perhatikan bahwa MediaWiki saat ini tidak mendukung PHP8.0. Jika Anda telah menginstal PHP8.0 di server Ubuntu Anda, maka Anda harus menjalankan sudo update-alternatives --config php
perintah untuk mengatur PHP7.4 sebagai versi default.
Setelah semua dependensi diinstal, jalankan perintah berikut untuk mengatur pengguna server web (www-data
) sebagai pemilik direktori ini.
sudo chown www-data:www-data /var/www/mediawiki/ -R
Langkah 2:Membuat Basis Data
Masuk ke server MariaDB dengan perintah di bawah ini.
sudo mysql -u root
Buat database untuk MediaWiki. Tutorial ini memberi nama database mediawiki
, tetapi Anda dapat menggunakan nama apa pun yang Anda suka.
CREATE DATABASE mediawiki;
Kemudian jalankan perintah berikut di MariaDB prompt untuk membuat pengguna database dan memberikan hak istimewa kepada pengguna ini. Ganti mediawiki
, wikiuser
dan password
dengan nama basis data pilihan Anda, nama pengguna basis data, dan kata sandi pengguna.
GRANT ALL PRIVILEGES ON mediawiki.* TO 'wikiuser'@'localhost' IDENTIFIED BY 'password';
Selanjutnya, hapus hak istimewa MariaDB dan keluar.
flush privileges; exit;
Langkah 3:Buat Apache Virtual Host atau File Konfigurasi Nginx untuk MediaWiki
Apache
Jika Anda menggunakan server web Apache, buat host virtual untuk MediaWiki.
sudo nano /etc/apache2/sites-available/mediawiki.conf
Salin dan tempel teks berikut ke dalam file. Ganti wiki.your-domain.com
dengan nama domain Anda yang sebenarnya. Jangan lupa untuk membuat catatan DNS A untuk nama domain ini.
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www//mediawiki/ ServerName wiki.your-domain.com <Directory /var/www/html/mediawiki/> Options FollowSymLinks AllowOverride All Order allow,deny allow from all </Directory> ErrorLog /var/log/apache2/mediawiki_error CustomLog /var/log/apache2/mediawiki_access common </VirtualHost>
Simpan dan tutup file. Kemudian aktifkan host virtual ini.
sudo a2ensite mediawiki.conf
Muat ulang Apache agar perubahan di atas diterapkan.
sudo systemctl reload apache2
Nginx
Jika Anda menggunakan server web Nginx, buat file blok server untuk MediaWiki di bawah /etc/nginx/conf.d/
direktori.
sudo nano /etc/nginx/conf.d/mediawiki.conf
Salin teks berikut dan tempel ke dalam file. Ganti wiki.your-domain.com
dengan nama domain Anda yang sebenarnya. Jangan lupa untuk membuat catatan DNS A untuk nama domain ini.
server { listen 80; listen [::]:80; server_name wiki.your-domain.com; root /var/www/mediawiki; index index.php; error_log /var/log/nginx/mediawiki.error; access_log /var/log/nginx/mediawiki.access; location / { try_files $uri $uri/ /index.php; } location ~ /.well-known { allow all; } location ~ /\.ht { deny all; } location ~ \.php$ { fastcgi_pass unix:/run/php/php7.4-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; include snippets/fastcgi-php.conf; } }
Simpan dan tutup file. Kemudian uji konfigurasi Nginx.
sudo nginx -t
Jika pengujian berhasil, muat ulang server web Nginx.
sudo systemctl reload nginx
Langkah 4:Mengaktifkan HTTPS
Untuk mengenkripsi lalu lintas HTTP, kita dapat mengaktifkan HTTPS dengan memasang sertifikat TLS gratis yang dikeluarkan dari Let's Encrypt. Jalankan perintah berikut untuk menginstal klien Let's Encrypt (certbot) di server Ubuntu 20.04.
sudo apt install certbot
Jika Anda menggunakan Apache , instal plugin Certbot Apache.
sudo apt install python3-certbot-apache
Dan jalankan perintah ini untuk mendapatkan dan menginstal sertifikat TLS.
sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d wiki.your-domain.com
Jika Anda menggunakan Nginx , maka Anda juga perlu menginstal plugin Certbot Nginx.
sudo apt install python3-certbot-nginx
Selanjutnya, jalankan perintah berikut untuk mendapatkan dan menginstal sertifikat TLS.
sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d wiki.your-domain.com
Dimana
--nginx
:Gunakan plugin nginx.--apache
:Gunakan plugin Apache.--agree-tos
:Menyetujui persyaratan layanan.--redirect
:Memaksa HTTPS dengan pengalihan 301.--hsts
:Tambahkan header Strict-Transport-Security ke setiap respons HTTP. Memaksa browser untuk selalu menggunakan TLS untuk domain. Mempertahankan dari SSL/TLS Stripping.--staple-ocsp
:Mengaktifkan Stapel OCSP. Respons OCSP yang valid ditempelkan ke sertifikat yang ditawarkan server selama TLS.
Sertifikat sekarang harus diperoleh dan diinstal secara otomatis.
Langkah 5:Menjalankan Skrip Instalasi Berbasis Web
Buka https://wiki.you-domain.com
di browser web Anda untuk memulai skrip instalasi berbasis web. Klik Selesaikan penginstalan link untuk memulai wizard penyiapan.
Selanjutnya, pilih bahasa yang akan digunakan untuk instalasi MediaWiki dan untuk wiki itu sendiri.
Wizard penyiapan kemudian akan memeriksa lingkungan server Anda, seperti ekstensi PHP.
Pergi ke langkah berikutnya. Anda perlu mengonfigurasi pengaturan basis data. Pilih MariaDB, MySQL, or compatible
untuk Database type
. Masukkan localhost
untuk Database host dan masukkan nama database mediawiki
serta nama pengguna dan sandi database yang dibuat pada langkah 2.
Pada langkah berikutnya, Anda dapat memilih untuk menggunakan akun database yang sama untuk akses web.
Kemudian masukkan nama Wiki Anda dan buat akun admin.
Dalam Options
halaman, Anda memiliki opsi untuk mengatur wiki Anda sebagai Buka wiki , diperlukan pembuatan akun, hanya editor resmi dan wiki pribadi. Kemudian Anda dapat memilih lisensi.
Klik Continue
untuk memulai instalasi Mediawiki.
Sebuah LocalSettings.php
file akan dihasilkan dalam proses instalasi. Anda perlu mengunduh file ini dan memasukkannya ke dalam /var/www/mediawiki/
direktori server Ubuntu 20.04 Anda. Setelah selesai, Anda akan dapat mengakses MediaWiki yang baru diinstal di http://wiki.your-domain.com
.
Untuk membuat halaman suatu istilah, cukup buka
wiki.your-domain.com/index.php/your-term
atau
wiki.your-domain.com/index.php?title=your-term
Cara Mengatur SMTP untuk Mengirim Email
Jika instans MediaWiki Anda akan digunakan oleh lebih dari satu orang, penting bahwa server MediaWiki Anda dapat mengirim email transaksional, seperti email pengaturan ulang kata sandi, email pemberitahuan, dll.
Edit LocalSettings.php
berkas.
sudo nano /var/www/mediawiki/LocalSettings.php
Tambahkan baris berikut di akhir file ini.
$wgSMTP = [ 'host' => 'tls://mail.your-domain.com', // could also be an IP address. Where the SMTP server is located. If using SSL or TLS, add the prefix "ssl://" or "tls://". 'port' => 587, // Port to use when connecting to the SMTP server 'auth' => true, // Should we use SMTP authentication (true or false) 'username' => '[email protected]', // Username to use for SMTP authentication (if being used) 'password' => 'user_password' // Password to use for SMTP authentication (if being used) ];
Simpan dan tutup file.
Untuk cara setting email server silahkan simak tutorial berikut ini. Catatan bahwa saya sangat merekomendasikan menjalankan server email iRedMail pada OS bersih yang baru. Menginstal iRedMail pada OS yang memiliki aplikasi web lain dapat gagal, dan kemungkinan merusak aplikasi yang ada.
- Cara menyiapkan server email berfitur lengkap dengan mudah di Ubuntu 20.04 dengan iRedMail