Come installare DokuWiki su FreeBSD 12

DokuWiki è un programma wiki open source scritto in PHP che non richiede un database. Memorizza i dati in file di testo. Il codice sorgente di DokuWiki è ospitato pubblicamente su GitHub . Questa guida ti mostrerà come installare DokuWiki con Nginx su una nuova istanza di FreeBSD 12 Vultr.

Requisiti

  • Software per server Web che supporta PHP; come Apache, Nginx, IIS, Lighttpd, LiteSpeed. Questa guida utilizzerà Nginx.
  • PHP versione 5.6 o successiva, le versioni più recenti sono altamente raccomandate. Questa guida utilizzerà PHP 7.2.

Prima di iniziare

Controlla la versione di FreeBSD.

uname -ro
# FreeBSD 12.0-RELEASE

Assicurati che il tuo sistema FreeBSD sia aggiornato.

freebsd-update fetch install
pkg update && pkg upgrade -y

Installa i pacchetti necessari se non sono presenti sul tuo sistema.

pkg install -y sudo vim unzip wget bash socat git

Crea un nuovo account utente con il tuo nome utente preferito (useremo 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!

Esegui il visudocomando e decommenta la %wheel ALL=(ALL) ALLriga per consentire ai membri del wheelgruppo di eseguire qualsiasi comando.

visudo

# Uncomment by removing hash (#) sign
%wheel ALL=(ALL) ALL

Ora passa al nuovo utente creato.

su - johndoe

NOTA: sostituisci johndoecon il tuo nome utente.

Imposta il fuso orario.

sudo tzsetup

Installa le estensioni PHP e PHP

Installa PHP e le estensioni PHP necessarie.

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

Controlla la versione

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

Soft-link php.ini-productiona php.ini.

sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini

Abilita e avvia PHP-FPM.

sudo sysrc php_fpm_enable=yes
sudo service php-fpm start

Installa e configura Nginx

DokuWiki verrà eseguito su qualsiasi server Web che supporti PHP. In questo tutorial useremo Nginx. Se preferisci Apache o un altro server web, puoi usarlo al posto di Nginx.

Installa Nginx.

sudo pkg install -y nginx

Controlla la versione

nginx -v
# nginx version: nginx/1.14.2

Abilita e avvia Nginx.

sudo sysrc nginx_enable=yes
sudo service nginx start

Esegui sudo vim /usr/local/etc/nginx/dokuwiki.confe configura Nginx per 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;
  }

}

Salvare il file e uscire con :+ W+ Q.

Ora dobbiamo includere il dokuwiki.conffile nel file principale nginx.conf.

Esegui sudo vim /usr/local/etc/nginx/nginx.confe aggiungi la seguente riga per http {}bloccare.

include dokuwiki.conf;

Prova la configurazione di Nginx.

sudo nginx -t

Ricarica Nginx.

sudo service nginx reload

Installa DokuWiki

Creare una directory radice del documento.

sudo mkdir -p /usr/local/www/dokuwiki

Cambia la proprietà della /usr/local/www/dokuwikidirectory in johndoe.

sudo chown -R johndoe:johndoe /usr/local/www/dokuwiki

Passare alla radice del documento.

cd /usr/local/www/dokuwiki

Scarica l'ultima versione stabile di DokuWiki dalla pagina di download di DokuWiki .

wget https://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz

Disimballare il tarball 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/

Cambia la proprietà della /usr/local/www/dokuwikidirectory in www.

sudo chown -R www:www /usr/local/www/dokuwiki

Apri lo script di installazione di DokuWiki install.phpnel browser e imposta DokuWiki. Lo script di installazione verifica la disponibilità delle funzioni PHP richieste e verifica le autorizzazioni necessarie per i file. Crea inoltre un account amministratore iniziale e un criterio ACL iniziale. Per eseguire il programma di installazione, aprire http://wiki.example.com/install.phpnel browser e seguire le istruzioni.

Dopo una corretta configurazione, elimina il install.phpfile dalla directory principale di DokuWiki.

sudo rm /usr/local/www/dokuwiki/install.php

Il tuo DokuWiki è stato installato e ora puoi accedere e modificare un wiki funzionale su http://wiki.example.com/.



Leave a Comment

Lintelligenza artificiale può combattere con un numero crescente di attacchi ransomware?

Lintelligenza artificiale può combattere con un numero crescente di attacchi ransomware?

Gli attacchi ransomware sono in aumento, ma l'intelligenza artificiale può aiutare ad affrontare l'ultimo virus informatico? L'intelligenza artificiale è la risposta? Leggi qui sai è AI boone o bane

ReactOS: è questo il futuro di Windows?

ReactOS: è questo il futuro di Windows?

ReactOS, un sistema operativo open source e gratuito è qui con l'ultima versione. Può essere sufficiente alle esigenze degli utenti Windows moderni e abbattere Microsoft? Scopriamo di più su questo vecchio stile, ma un'esperienza del sistema operativo più recente.

Rimani connesso tramite lapp desktop WhatsApp 24*7

Rimani connesso tramite lapp desktop WhatsApp 24*7

Whatsapp ha finalmente lanciato l'app desktop per utenti Mac e Windows. Ora puoi accedere facilmente a Whatsapp da Windows o Mac. Disponibile per Windows 8+ e Mac OS 10.9+

In che modo lintelligenza artificiale può portare lautomazione dei processi al livello successivo?

In che modo lintelligenza artificiale può portare lautomazione dei processi al livello successivo?

Leggi questo per sapere come l'intelligenza artificiale sta diventando popolare tra le aziende di piccole dimensioni e come sta aumentando le probabilità di farle crescere e dare un vantaggio ai loro concorrenti.

Laggiornamento del supplemento macOS Catalina 10.15.4 sta causando più problemi che risolverli

Laggiornamento del supplemento macOS Catalina 10.15.4 sta causando più problemi che risolverli

Recentemente Apple ha rilasciato macOS Catalina 10.15.4 un aggiornamento supplementare per risolvere i problemi, ma sembra che l'aggiornamento stia causando più problemi che portano al bricking delle macchine mac. Leggi questo articolo per saperne di più

13 strumenti commerciali per lestrazione dei dati dai Big Data

13 strumenti commerciali per lestrazione dei dati dai Big Data

13 strumenti commerciali per l'estrazione dei dati dai Big Data

Che cosè un file system di journaling e come funziona?

Che cosè un file system di journaling e come funziona?

Il nostro computer memorizza tutti i dati in un modo organizzato noto come file system di journaling. È un metodo efficiente che consente al computer di cercare e visualizzare i file non appena si preme search.https://wethegeek.com/?p=94116&preview=true

Singolarità tecnologica: un lontano futuro della civiltà umana?

Singolarità tecnologica: un lontano futuro della civiltà umana?

Man mano che la scienza si evolve a un ritmo rapido, assumendo gran parte dei nostri sforzi, aumentano anche i rischi di sottoporci a una singolarità inspiegabile. Leggi, cosa potrebbe significare per noi la singolarità.

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Limpatto dellintelligenza artificiale nella sanità 2021

Limpatto dellintelligenza artificiale nella sanità 2021

L'intelligenza artificiale nell'assistenza sanitaria ha compiuto grandi passi avanti negli ultimi decenni. Pertanto, il futuro dell'IA in sanità continua a crescere giorno dopo giorno.