Como instalar o DokuWiki no FreeBSD 12

O DokuWiki é um programa wiki de código aberto escrito em PHP que não requer um banco de dados. Ele armazena dados em arquivos de texto. O código fonte do DokuWiki está hospedado publicamente no GitHub . Este guia mostrará como instalar o DokuWiki com Nginx em uma nova instância do FreeBSD 12 Vultr.

Exigências

  • Software de servidor Web que suporta PHP; como Apache, Nginx, IIS, Lighttpd, LiteSpeed. Este guia usará o Nginx.
  • PHP versão 5.6 ou superior, versões mais recentes são altamente recomendadas. Este guia usará o PHP 7.2.

Antes de você começar

Verifique a versão do FreeBSD.

uname -ro
# FreeBSD 12.0-RELEASE

Verifique se o seu sistema FreeBSD está atualizado.

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

Instale os pacotes necessários se eles não estiverem presentes no seu sistema.

pkg install -y sudo vim unzip wget bash socat git

Crie uma nova conta de usuário com seu nome de usuário preferido (nós usaremos 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!

Execute o visudocomando e remova o comentário da %wheel ALL=(ALL) ALLlinha, para permitir que os membros do wheelgrupo executem qualquer comando.

visudo

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

Agora, mude para o usuário recém-criado.

su - johndoe

NOTA: Substitua johndoepelo seu nome de usuário.

Configure o fuso horário.

sudo tzsetup

Instale extensões PHP e PHP

Instale o PHP, bem como as extensões PHP necessárias.

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

Verifique a versão.

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-productionpara php.ini.

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

Ative e inicie o PHP-FPM.

sudo sysrc php_fpm_enable=yes
sudo service php-fpm start

Instale e configure o Nginx

O DokuWiki será executado em qualquer servidor Web que suporte PHP. Neste tutorial, usaremos o Nginx. Se você preferir o Apache ou outro servidor da Web, poderá usá-lo em vez do Nginx.

Instale o Nginx.

sudo pkg install -y nginx

Verifique a versão.

nginx -v
# nginx version: nginx/1.14.2

Habilite e inicie o Nginx.

sudo sysrc nginx_enable=yes
sudo service nginx start

Execute sudo vim /usr/local/etc/nginx/dokuwiki.confe configure o Nginx para 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;
  }

}

Salve o arquivo e saia com :+ W+ Q.

Agora precisamos incluir o dokuwiki.confarquivo no arquivo principal nginx.conf.

Execute sudo vim /usr/local/etc/nginx/nginx.confe adicione a seguinte linha para http {}bloquear.

include dokuwiki.conf;

Teste a configuração do Nginx.

sudo nginx -t

Recarregue o Nginx.

sudo service nginx reload

Instale o DokuWiki

Crie um diretório raiz do documento.

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

Altere a propriedade do /usr/local/www/dokuwikidiretório para johndoe.

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

Navegue até a raiz do documento.

cd /usr/local/www/dokuwiki

Faça o download da versão estável mais recente do DokuWiki na página de download do DokuWiki .

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

Descompacte o pacote do 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/

Altere a propriedade do /usr/local/www/dokuwikidiretório para www.

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

Abra o script de configuração do DokuWiki install.php, no seu navegador e configure o DokuWiki. O script de configuração verifica a disponibilidade das funções PHP necessárias e verifica as permissões de arquivo necessárias. Ele também cria uma conta de administrador inicial e uma política inicial da ACL. Para executar o instalador, abra http://wiki.example.com/install.phpno navegador e siga as instruções.

Após uma configuração bem-sucedida, exclua o install.phparquivo do diretório raiz do DokuWiki.

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

Seu DokuWiki foi instalado e agora você pode acessar e editar um wiki funcional em http://wiki.example.com/.



Leave a Comment

A IA pode lutar contra o aumento do número de ataques de ransomware

A IA pode lutar contra o aumento do número de ataques de ransomware

Os ataques de ransomware estão aumentando, mas a IA pode ajudar a lidar com os vírus de computador mais recentes? AI é a resposta? Leia aqui para saber se é AI boone ou bane

ReactOS: Este é o futuro do Windows?

ReactOS: Este é o futuro do Windows?

ReactOS, um sistema operacional de código aberto e gratuito está aqui com a versão mais recente. Será que ela pode atender às necessidades dos usuários modernos do Windows e derrubar a Microsoft? Vamos descobrir mais sobre esse estilo antigo, mas uma experiência de sistema operacional mais recente.

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

O Whatsapp finalmente lançou o aplicativo Desktop para usuários de Mac e Windows. Agora você pode acessar o Whatsapp do Windows ou Mac facilmente. Disponível para Windows 8+ e Mac OS 10.9+

Como a IA pode levar a automação de processos ao próximo nível?

Como a IA pode levar a automação de processos ao próximo nível?

Leia isto para saber como a Inteligência Artificial está se tornando popular entre as empresas de pequena escala e como está aumentando as probabilidades de fazê-las crescer e dar vantagem a seus concorrentes.

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

Recentemente, a Apple lançou o macOS Catalina 10.15.4, uma atualização suplementar para corrigir problemas, mas parece que a atualização está causando mais problemas, levando ao bloqueio de máquinas mac. Leia este artigo para saber mais

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

O que é um sistema de arquivos de registro no diário e como ele funciona?

O que é um sistema de arquivos de registro no diário e como ele funciona?

Nosso computador armazena todos os dados de uma maneira organizada conhecida como sistema de arquivos Journaling. É um método eficiente que permite ao computador pesquisar e exibir arquivos assim que você clicar em search.https: //wethegeek.com/? P = 94116 & preview = true

Singularidade tecnológica: um futuro distante da civilização humana?

Singularidade tecnológica: um futuro distante da civilização humana?

À medida que a ciência evolui em um ritmo rápido, assumindo muitos de nossos esforços, os riscos de nos sujeitarmos a uma singularidade inexplicável também aumentam. Leia, o que a singularidade pode significar para nós.

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

O impacto da inteligência artificial na saúde 2021

O impacto da inteligência artificial na saúde 2021

A IA na área da saúde deu grandes saltos nas últimas décadas. Portanto, o futuro da IA ​​na área da saúde ainda está crescendo dia a dia.