DokuWiki adalah perangkat lunak wiki Open Source yang mudah digunakan dan sangat serbaguna yang tidak memerlukan database. Itu disukai oleh pengguna karena sintaksnya yang bersih dan mudah dibaca. Kemudahan pemeliharaan, pencadangan, dan integrasi menjadikannya favorit administrator. Kontrol akses dan konektor otentikasi bawaan membuat DokuWiki sangat berguna dalam konteks perusahaan dan sejumlah besar plugin yang disumbangkan oleh komunitasnya yang dinamis memungkinkan berbagai kasus penggunaan di luar wiki tradisional. Tutorial ini akan menunjukkan cara menginstal DokuWiki di server CentOS 8 yang baru.
Persyaratan
Pastikan server Anda memenuhi persyaratan berikut.
- Perangkat lunak server web yang mendukung PHP (Apache, NGINX, IIS, Lighttpd, LiteSpeed)
- PHP versi 5.6 atau yang lebih baru, versi yang lebih baru sangat disarankan.
Prasyarat
- Sistem operasi CentOS 8.
- Pengguna non-root dengan
sudo
hak istimewa.
Langkah Awal
Periksa versi CentOS Anda:
cat /etc/centos-release
# CentOS Linux release 8.0.1905 (Core)
Siapkan zona waktu:
timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'
Perbarui paket sistem operasi Anda (perangkat lunak). Ini adalah langkah pertama yang penting karena memastikan Anda memiliki pembaruan dan perbaikan keamanan terbaru untuk paket perangkat lunak default sistem operasi Anda:
sudo dnf update -y
Instal beberapa paket penting yang diperlukan untuk administrasi dasar sistem operasi CentOS:
sudo dnf install -y curl wget vim git unzip socat bash-completion epel-release
Langkah 1 - Instal ekstensi PHP dan PHP
Instal PHP dan ekstensi PHP yang diperlukan:
sudo dnf install -y php php-cli php-fpm php-gd php-xml php-zip
Untuk menampilkan PHP yang dikompilasi dalam modul, Anda dapat menjalankan:
php -m
ctype
curl
exif
fileinfo
. . .
. . .
Periksa versi PHP:
php --version
# PHP 7.2.11-1-(cli) (built: Oct 26 2019 14:14:18) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.3.11, Copyright (c) 1998-2018 Zend Technologies
# with Zend OPcache v7.3.11-1~deb10u1, Copyright (c) 1999-2018, by Zend Technologies
Mulai dan aktifkan layanan PHP-FPM:
sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service
Langkah 2 - Instal klien acme.sh dan dapatkan sertifikat Let's Encrypt ( opsional )
Mengamankan situs Anda dengan HTTPS tidak diperlukan, tetapi merupakan praktik yang baik untuk mengamankan lalu lintas situs Anda. Untuk mendapatkan sertifikat TLS dari Let's Encrypt kita akan menggunakan acme.sh client. Acme.sh adalah software shell UNIX sederhana untuk mendapatkan sertifikat TLS dari Let's Encrypt tanpa ketergantungan.
Unduh dan instal acme.sh:
sudo su - root
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
./acme.sh --install --accountemail [email protected]
source ~/.bashrc
cd ~
Periksa versi acme.sh:
acme.sh --version
# v2.8.2
Dapatkan RSA dan ECC/ECDSA sertifikat untuk domain/nama host Anda:
# RSA 2048
acme.sh --issue --standalone -d example.com --keylength 2048
# ECDSA
acme.sh --issue --standalone -d example.com --keylength ec-256
Jika Anda ingin sertifikat palsu untuk pengujian, Anda dapat menambahkan --staging
tandai perintah di atas.
Setelah menjalankan perintah di atas, sertifikat Anda dan kunci akan di:
- Untuk RSA :
/home/username/example.com
direktori. - Untuk ECC/ECDSA :
/home/username/example.com_ecc
direktori.
Untuk membuat daftar sertifikat yang dikeluarkan, Anda dapat menjalankan:
acme.sh --list
Buat direktori untuk menyimpan sertifikat Anda. Kami akan menggunakan /etc/letsencrypt
direktori.
mkdir -p /etc/letsecnrypt/example.com
sudo mkdir -p /etc/letsencrypt/example.com_ecc
Instal/salin sertifikat ke direktori /etc/letsencrypt.
# RSA
acme.sh --install-cert -d example.com --cert-file /etc/letsencrypt/example.com/cert.pem --key-file /etc/letsencrypt/example.com/private.key --fullchain-file /etc/letsencrypt/example.com/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"
# ECC/ECDSA
acme.sh --install-cert -d example.com --ecc --cert-file /etc/letsencrypt/example.com_ecc/cert.pem --key-file /etc/letsencrypt/example.com_ecc/private.key --fullchain-file /etc/letsencrypt/example.com_ecc/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"
Semua sertifikat akan diperpanjang secara otomatis setiap 60 hari.
Setelah mendapatkan sertifikat keluar dari pengguna root dan kembali ke pengguna Sudo biasa:
exit
Langkah 3 - Instal dan konfigurasikan Nginx
DokuWiki akan berjalan di server web mana pun yang mendukung PHP. Dalam tutorial ini, kita akan menggunakan Nginx. Jika Anda lebih suka Apache atau server web lain, Anda dapat menggunakannya daripada Nginx.
Download dan instal NGINX dari repositori CentOS:
sudo dnf install -y nginx
Periksa versi Nginx:
sudo nginx -v
# nginx version: nginx/1.14.2
Konfigurasi Nginx:
sudo vim /etc/nginx/conf.d/dokuwiki.conf
Salin/tempel konfigurasi Nginx berikut dan simpan:
server {
listen [::]:443 ssl;
listen 443 ssl;
listen [::]:80;
listen 80;
# RSA
ssl_certificate /etc/letsencrypt/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com/private.key;
# ECC
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.key;
server_name wiki.example.com;
root /var/www/dokuwiki;
index index.html index.htm index.php doku.php;
client_max_body_size 15M;
client_body_buffer_size 128K;
location / {
try_files $uri $uri/ @dokuwiki;
}
location ^~ /conf/ { return 403; }
location ^~ /data/ { return 403; }
location ~ /\.ht { deny all; }
location @dokuwiki {
rewrite ^/_media/(.*) /lib/exe/fetch.php?media=$1 last;
rewrite ^/_detail/(.*) /lib/exe/detail.php?media=$1 last;
rewrite ^/_export/([^/]+)/(.*) /doku.php?do=export_$1&id=$2 last;
rewrite ^/(.*) /doku.php?id=$1 last;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
Periksa konfigurasi Nginx:
sudo nginx -t
Muat ulang Nginx:
sudo systemctl reload nginx.service
Langkah 4 - Instal DokuWiki
Buat direktori root dokumen:
sudo mkdir -p /var/www/dokuwiki
Arahkan ke root dokumen:
cd /var/www/dokuwiki
Unduh rilis stabil DokuWiki terbaru dari halaman unduh DokuWiki:
sudo wget https://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz
Buka kemasan tarbal DokuWiki:
sudo tar xvf dokuwiki-stable.tgz
sudo rm dokuwiki-stable.tgz
sudo mv dokuwiki-2018-04-22b/* . && mv dokuwiki-2018-04-22b/.* .
sudo rmdir dokuwiki-2018-04-22b/
Ubah kepemilikan /var/www/dokuwiki
direktori ke www-data:
sudo chown -R nginx:nginx /var/www/dokuwiki
Jalankan sudo vim /etc/php-fpm.d/www.conf
dan atur pengguna dan grup ke nginx
. Awalnya, itu akan disetel ke pengguna dan grup apache
.
sudo vim /etc/php-fpm.d/www.conf
Mulai ulang php7.3-fpm.service:
sudo systemctl restart php7.3-fpm.service
Buka skrip pengaturan DokuWiki, install.php
, di browser Anda dan atur DokuWiki. Skrip pengaturan memeriksa ketersediaan fungsi PHP yang diperlukan dan memeriksa izin file yang diperlukan. Itu juga membuat akun administrator awal dan kebijakan ACL awal. Untuk menjalankan penginstal, buka http://wiki.example.com/install.php
di browser dan ikuti petunjuknya.
Langkah 5 - Akses Antarmuka Web DokuWiki
Buka browser web Anda dan ketik URL http://example.com/install.php. Anda akan diarahkan ke halaman berikut:
Berikan semua informasi yang diperlukan seperti nama pengguna super, email, kata sandi. Kemudian, klik tombol Simpan tombol. Setelah instalasi berhasil diselesaikan, Anda akan melihat halaman berikut:
Sekarang, klik DokuWiki baru Anda . Anda akan melihat halaman berikut:
Sekarang, klik tombol login tombol. Anda akan diarahkan ke halaman berikut:
Sekarang, berikan nama pengguna dan kata sandi Admin Anda. Kemudian, klik Log Dalam tombol. Anda akan melihat dasbor DokuWiki di halaman berikut:
Setelah konfigurasi berhasil, hapus install.php
file dari direktori root DokuWiki:
sudo rm /var/www/dokuwiki/install.php
Selamat! Anda telah berhasil menginstal dan mengkonfigurasi DokuWiki di server CentOS 8. Sekarang Anda dapat membuat situs wiki Anda sendiri dengan mudah menggunakan DokuWiki.
Tautan
- https://www.dokuwiki.org/
- https://github.com/splitbrain/dokuwiki