Requisits
Abans que comencis
Instal·leu extensions PHP i PHP
Instal·leu i configureu Nginx
Instal·leu DokuWiki
DokuWiki és un programa wiki de codi obert escrit en PHP que no requereix cap base de dades. Emmagatzema dades en fitxers de text. El codi font DokuWiki està allotjat públicament a GitHub . Aquesta guia us mostrarà com instal·lar DokuWiki amb Nginx en una instància nova de FreeBSD 12 Vultr.
Requisits
- Programari de servidor web compatible amb PHP; com Apache, Nginx, IIS, Lighttpd, LiteSpeed. Aquesta guia utilitzarà Nginx.
- PHP versió 5.6 o superior, les versions més noves són molt recomanables. Aquesta guia utilitzarà PHP 7.2.
Abans que comencis
Comproveu la versió de FreeBSD.
uname -ro
# FreeBSD 12.0-RELEASE
Assegureu-vos que el vostre sistema FreeBSD estigui actualitzat.
freebsd-update fetch install
pkg update && pkg upgrade -y
Instal·leu els paquets necessaris si no estan presents al vostre sistema.
pkg install -y sudo vim unzip wget bash socat git
Creeu un compte d'usuari nou amb el vostre nom d'usuari preferit (farem servir johndoe).
adduser
# Username: johndoe
# Full name: John Doe
# Uid (Leave empty for default): <Enter>
# Login group [johndoe]: <Enter>
# Login group is johndoe. Invite johndoe into other groups? []: wheel
# Login class [default]: <Enter>
# Shell (sh csh tcsh nologin) [sh]: bash
# Home directory [/home/johndoe]: <Enter>
# Home directory permissions (Leave empty for default): <Enter>
# Use password-based authentication? [yes]: <Enter>
# Use an empty password? (yes/no) [no]: <Enter>
# Use a random password? (yes/no) [no]: <Enter>
# Enter password: your_secure_password
# Enter password again: your_secure_password
# Lock out the account after creation? [no]: <Enter>
# OK? (yes/no): yes
# Add another user? (yes/no): no
# Goodbye!
Executeu l' visudoordre i descomenteu la %wheel ALL=(ALL) ALLlínia, per permetre que els membres del wheelgrup executin qualsevol ordre.
visudo
# Uncomment by removing hash (#) sign
%wheel ALL=(ALL) ALL
Ara, canvieu al vostre nou usuari creat.
su - johndoe
NOTA: Substituïu-lo johndoepel vostre nom d'usuari.
Configura la zona horària.
sudo tzsetup
Instal·leu extensions PHP i PHP
Instal·leu PHP, així com les extensions PHP necessàries.
sudo pkg install -y php72 php72-ctype php72-curl php72-dom php72-hash php72-iconv php72-gd php72-json php72-mbstring php72-openssl php72-session php72-simplexml php72-xml php72-zip php72-zlib php72-filter php72-ftp php72-tokenizer php72-calendar php72-pecl-APCu php72-opcache php72-phar php72-fileinfo
Comproveu la versió.
php --version
# PHP 7.2.14 (cli) (built: Jan 15 2019 01:14:39) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
# with Zend OPcache v7.2.14, Copyright (c) 1999-2018, by Zend Technologies
Enllaç suau php.ini-productiona php.ini.
sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini
Activeu i inicieu PHP-FPM.
sudo sysrc php_fpm_enable=yes
sudo service php-fpm start
DokuWiki s'executarà en qualsevol servidor web que admeti PHP. En aquest tutorial farem servir Nginx. Si preferiu Apache o un altre servidor web, podeu utilitzar-lo en lloc de Nginx.
Instal·leu Nginx.
sudo pkg install -y nginx
Comproveu la versió.
nginx -v
# nginx version: nginx/1.14.2
Activeu i inicieu Nginx.
sudo sysrc nginx_enable=yes
sudo service nginx start
Executeu sudo vim /usr/local/etc/nginx/dokuwiki.confi configureu Nginx per a DokuWiki.
server {
listen [::]:80;
listen 80;
server_name wiki.example.com; # Replace with your hostname
root /usr/local/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&$args last;
}
location ~ \.php$ {
try_files $uri $uri/ /doku.php;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param REDIRECT_STATUS 200;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
Deseu el fitxer i sortiu amb :+ W+ Q.
Ara hem d'incloure el dokuwiki.conffitxer al nginx.conffitxer principal .
Executeu sudo vim /usr/local/etc/nginx/nginx.confi afegiu la línia següent per http {}bloquejar.
include dokuwiki.conf;
Proveu la configuració de Nginx.
sudo nginx -t
Torna a carregar Nginx.
sudo service nginx reload
Instal·leu DokuWiki
Creeu un directori arrel del document.
sudo mkdir -p /usr/local/www/dokuwiki
Canvia la propietat del /usr/local/www/dokuwikidirectori a johndoe.
sudo chown -R johndoe:johndoe /usr/local/www/dokuwiki
Navegueu a l'arrel del document.
cd /usr/local/www/dokuwiki
Baixeu la versió estable més recent de DokuWiki des de la pàgina de descàrrega de DokuWiki .
wget https://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz
Desempaqueteu el fitxer arxiu DokuWiki.
tar xvf dokuwiki-stable.tgz
rm dokuwiki-stable.tgz
mv dokuwiki-2018-04-22b/* . && mv dokuwiki-2018-04-22b/.* .
rmdir dokuwiki-2018-04-22b/
Canvia la propietat del /usr/local/www/dokuwikidirectori a www.
sudo chown -R www:www /usr/local/www/dokuwiki
Obriu l'script de configuració de DokuWiki, install.php, al vostre navegador i configureu DokuWiki. L'script de configuració comprova la disponibilitat de les funcions PHP necessàries i comprova els permisos de fitxer necessaris. També crea un compte d'administrador inicial i una política ACL inicial. Per executar l'instal·lador, obriu http://wiki.example.com/install.phpal navegador i seguiu les instruccions.
Després d'una configuració correcta, suprimiu el install.phpfitxer del directori arrel de DokuWiki.
sudo rm /usr/local/www/dokuwiki/install.php
El vostre DokuWiki s'ha instal·lat i ara podeu accedir i editar un wiki funcional a http://wiki.example.com/.