FreeBSD 12にDokuWikiをインストールする方法

DokuWikiは、データベースを必要としない、PHPで記述されたオープンソースのWikiプログラムです。データをテキストファイルに保存します。DokuWikiのソースコードはGitHubで公開されています。このガイドでは、Nginxを使用してDokuWikiを新しいFreeBSD 12 Vultrインスタンスにインストールする方法を示します。

必要条件

  • PHPをサポートするWebサーバーソフトウェア。Apache、Nginx、IIS、Lighttpd、LiteSpeedなど。このガイドではNginxを使用します。
  • PHPバージョン5.6以降、新しいバージョンを強くお勧めします。このガイドではPHP 7.2を使用します。

あなたが始める前に

FreeBSDのバージョンを確認してください。

uname -ro
# FreeBSD 12.0-RELEASE

FreeBSDシステムが最新であることを確認します。

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

システムに存在しない場合は、必要なパッケージをインストールします。

pkg install -y sudo vim unzip wget bash socat git

希望するユーザー名で新しいユーザーアカウントを作成します(ここではを使用します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!

visudoコマンドを実行し、%wheel ALL=(ALL) ALL行のコメントを外して、wheelグループのメンバーが任意のコマンドを実行できるようにします。

visudo

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

次に、新しく作成したユーザーに切り替えます。

su - johndoe

注: ユーザー名に置き換えjohndoeてください。

タイムゾーンを設定します。

sudo tzsetup

PHPとPHP拡張機能をインストールする

PHPと必要なPHP拡張機能をインストールします。

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

バージョンを確認してください。

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

ソフトリンクphp.ini-productionphp.ini

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

PHP-FPMを有効にして起動します。

sudo sysrc php_fpm_enable=yes
sudo service php-fpm start

Nginxをインストールして構成する

DokuWikiは、PHPをサポートする任意のWebサーバーで実行できます。このチュートリアルでは、Nginxを使用します。Apacheまたは別のWebサーバーを使用する場合は、Nginxの代わりにそれを使用できます。

Nginxをインストールします。

sudo pkg install -y nginx

バージョンを確認してください。

nginx -v
# nginx version: nginx/1.14.2

Nginxを有効にして起動します。

sudo sysrc nginx_enable=yes
sudo service nginx start

sudo vim /usr/local/etc/nginx/dokuwiki.confNginx for 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;
  }

}

でファイルして終了保存:+ W+ Q

次に、dokuwiki.confファイルをメインnginx.confファイルに含める必要があります。

ブロックを実行sudo vim /usr/local/etc/nginx/nginx.confするには、次の行を実行して追加しますhttp {}

include dokuwiki.conf;

Nginx構成をテストします。

sudo nginx -t

Nginxをリロードします。

sudo service nginx reload

DokuWikiをインストールする

ドキュメントルートディレクトリを作成します。

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

/usr/local/www/dokuwikiディレクトリの所有権をに変更しjohndoeます。

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

ドキュメントルートに移動します。

cd /usr/local/www/dokuwiki

DokuWikiダウンロードページから、DokuWikiの最新の安定版リリースをダウンロードします

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

DokuWiki tarballを解凍します。

tar xvf dokuwiki-stable.tgz
rm dokuwiki-stable.tgz
mv dokuwiki-2018-04-22b/* . && mv dokuwiki-2018-04-22b/.* .
rmdir dokuwiki-2018-04-22b/

/usr/local/www/dokuwikiディレクトリの所有権をに変更しwwwます。

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

install.phpブラウザでDokuWikiセットアップスクリプトを開き、DokuWikiをセットアップします。セットアップスクリプトは、必要なPHP関数が使用可能かどうかをチェックし、必要なファイル権限をチェックします。また、初期管理者アカウントと初期ACLポリシーも作成します。インストーラーを実行するにhttp://wiki.example.com/install.phpは、ブラウザーで開き、指示に従います。

設定に成功したらinstall.php、DokuWikiルートディレクトリからファイルを削除します。

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

DokuWikiがインストールされ、で機能的なWikiにアクセスして編集できるようになりましたhttp://wiki.example.com/



Leave a Comment

CentOS 7にApacheをインストールする方法

CentOS 7にApacheをインストールする方法

CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1におけるBlacklistdのインストール方法について詳しく解説します。この方法を通じて、強力なセキュリティ対策を実装できます。

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

サーバーマネージャーを使用して、Windows Serverの管理が向上します。セキュリティリスクを軽減し、効率的な管理を実現します。

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法。Seafile(コミュニティバージョン)は、ownCloudに似た無料のオープンソースファイル同期および共有ソリューションです。

DebianでSnortを設定する方法

DebianでSnortを設定する方法

Snortは無料のネットワーク侵入検知システムです。最新の方法で、SnortをDebianにインストールし、設定する手順を紹介します。ネットワークのセキュリティを強化しましょう。

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsサーバーでWebサイトを実行している場合、電子メールも受信できるようにするためにhMailServerを使用する方法を解説します。

Ubuntu 19.04にFiveMサーバーをインストールする方法

Ubuntu 19.04にFiveMサーバーをインストールする方法

FiveMサーバーをUbuntu 19.04にインストールするための詳細なガイド。必要条件からインストール、起動、トラブルシューティングまで、すべてのステップを含みます。

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

Debian 10にWebDAVをデプロイする方法を学び、WsgiDAVとSSL証明書で安全な接続を実現しましょう。

ヘルスケア2021における人工知能の影響

ヘルスケア2021における人工知能の影響

ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。