This is an old revision of the document!
Table of Contents
DokuWiki Installation
This install guide is a how-to for installing DokuWiki Ubuntu server 20.04.
Prerequisites
Packages required for DokuWiki to work:
sudo apt install php8.1 php8.1-common php8.1-cli php8.1-gd php8.1-mbstring php8.1-mysql php8.1-xml php8.1-ldap php8.1-fpm sudo apt install nginx
DokuWiki
Download and extract DokuWiki stable to the proper directory.
wget -c https://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz sudo tar -xvf "dokuwiki-stable.tgz" -C /var/www/ sudo mv /var/www/dokuwiki* /var/www/dokuwiki
Configure nginx
Need to make the configuration file for nginx to point to the correct files. Make sure to change the domain to the correct one, a generic placeholder wiki.domainname.tld is used for this example config.
sudo nano /etc/nginx/conf.d/dokuwiki.conf
Paste in the below configuration and save.
server {
listen 80;
listen 443 ssl;
server_name wiki.domainname.tld;
root /var/www/dokuwiki/;
access_log /var/log/nginx/dokuwiki.access.log;
error_log /var/log/nginx/dokuwiki.error.log;
#ssl on;
#ssl_certificate /etc/letsencrypt/live/wiki.domainname.tld/fullchain.pem;
#ssl_certificate_key /etc/letsencrypt/live/wiki.domainname.tld/privkey.pem;
#ssl_session_timeout 5m;
#ssl_ciphers 'AES256+EECDH:AES256+EDH:!aNULL';
#ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
#ssl_prefer_server_ciphers on;
#add_header Content-Security-Policy "default-src 'self' 'unsafe-inline' 'unsafe-eval'; img-src 'self' data:;";
#add_header X-XSS-Protection "1; mode=block";
index index.html index.php doku.php;
location / {
try_files $uri $uri/ @dokuwiki;
}
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 ~ /(data|conf|bin|inc)/ {
deny all;
}
location ~* \.(css|js|gif|jpe?g|png)$ {
expires 1M;
add_header Pragma public;
add_header Cache-Control "public, must-revalidate, proxy-revalidate";
}
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_intercept_errors off;
fastcgi_buffer_size 16k;
fastcgi_buffers 4 16k;
}
location ~ /\.ht {
deny all;
}
}
#server {
# listen 80;
# server_name wiki.domainname.tld;
# add_header Strict-Transport-Security max-age=2592000;
# rewrite ^ https://wiki.domainname.tld$request_uri? permanent;
#}
Here we are going to change the permissions on the web root files so that the web server can use and modify them.
sudo chown -R www-data:www-data /var/www/dokuwiki
Start nginx and php-fpm, and enable php-fpm to start at boot.
sudo systemctl start nginx php7.4-fpm sudo systemctl enable php7.4-fpm
Configure DokuWiki
Navigate your browser to your https://wiki.domainname.tld/install.php
From there you can configure everything for the initial setup of DokuWiki.
Removing the Glow
Make userstyle.css in /conf
sudo vim /var/www/dokuwiki/conf/userstyle.css
Copy the following
.dokuwiki div.page {
box-shadow: none;
}
.dokuwiki .pageId span {
box-shadow: none;
}
pre {
box-shadow: none;
}