freebsd:freebsd_12_install_nextcloud_16

文書の過去の版を表示しています。


FreeBSD 12でNextcloud 16サーバを作る

  • FreeBSD 12.0-RELEASE
    • Apache 2.4.41
    • MariaDB 10.3.16
    • PHP 7.3.8
  • Nextcloud 12.0.2
    • /usr/home/www/nextcoludにインストールする

うちではPHP 7.1が既に入っており、この機会にPHP 7.3に更新したいので7.1を消しておく。

# pkg remove -g php71\*
# pkg remove mod_php71

Apacheのインストール。

portmaster www/apache24

必要なモジュールは以下の通り。

必須

  • REWRITE

推奨

  • ENV
  • DIR
  • HEADERS
  • MIME

必要なモジュールが読み込まれるようにhttpd.confを編集。

/usr/local/etc/apache24/httpd.conf
NameVirtualHost *:80
 
...
LoadModule mime_module libexec/apache24/mod_mime.so
LoadModule env_module libexec/apache24/mod_env.so
LoadModule headers_module libexec/apache24/mod_headers.so
LoadModule dir_module libexec/apache24/mod_dir.so
LoadModule rewrite_module libexec/apache24/mod_rewrite.so
...

WebDAVについて

Nextcloudは自前のWebDAVサーバを持っているため、ApacheのWebDAVモジュールは不要。ApacheのWebDAVを使う場合はNextcloudの方は無効にしなければならない。

Nextcloudのサイトの設定を作成。パスは適宜読み替えの事。

/usr/local/etc/apache24/Includes/nextcloud.conf.inc
Alias /nextcloud "/usr/home/www/nextcloud/"
 
<Directory /usr/home/www/nextcloud/>
  Options +FollowSymlinks
  AllowOverride All
 
 <IfModule mod_dav.c>
  Dav off
 </IfModule>
 
 SetEnv HOME /usr/home/www/nextcloud
 SetEnv HTTP_HOME /usr/home/www/nextcloud
# pkg install mariadb103-server mariadb103-client

バイナリログ形式、トランザクション分離レベル、文字コード等を変更する。DB全体に影響するので、他のサービスを動かしてたり既存のデータがある場合は要注意。

/usr/local/etc/my.cnf
[client]
default-character-set = utf8mb4
 
[mysqld]
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci
transaction_isolation = READ-COMMITTED
binlog_format = ROW
innodb_file_per_table=1
# pkg install lang/php73
# cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini

必要なPHPモジュールを入れる。

公式マニュアルを参考に必要なモジュールをphp73-extensions経由で入れる。

portmaster lang/php73-extensions

デフォルトでチェックが入っているものはそのままに、自分はてんこ盛り仕様で以下のモジュールを追加した。

必須

  • CTYPE
  • CURL
  • DOM
  • GD
  • ICONV
  • JSON
  • XML
  • MBSTRING
  • OPENSSL
  • POSIX
  • SESSION
  • SIMPLEXML
  • XMLREADER
  • XMLWRITER
  • ZIP
  • ZLIB
  • PDO_MYSQL

推奨

  • FILEINFO
  • BZ2
  • INTL

オプション

  • FTP
  • EXIF
  • GMP
  • PCNTL

更にmod_phpを入れる。

# pkg install mod_php73

mod_phpの設定。

/usr/local/etc/apache24/httpd.conf
...
LoadModule php7_module        libexec/apache24/libphp7.so
...
 
<FilesMatch "\.php$">
    SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
    SetHandler application/x-httpd-php-source
</FilesMatch>

ImageMagick

サムネイル生成用にImageMagickを入れる。

# portmaster graphics/ImageMagick7-nox11

PHPのモジュールを入れる。

# pkg install php73-pecl-imagick-im7

FFmpeg

サムネイル生成用にFFMpegを入れる。

# portmaster multimedia/ffmpeg
  • freebsd/freebsd_12_install_nextcloud_16.1565966654.txt.gz
  • 最終更新: 2019-08-16 23:44
  • by Decomo