NextCloud

FreeBSD Apache2.4 PHP8.1MariaDB10.6環境下でのNextCloud

データベースの準備

nextcloudデータベースの作成

# mysql -u root -p
Enter password:PASSWORD
root@localhost [(none)]>create database nextcloud;

データベースユーザーnextcloudの作成及び権限の設定 データベースユーザーはlocalhostとIPアドレスの2つを作成

root@localhost[(none)]>grant all on nextcloud.* to 'nextcloud'@'localhost' identified by 'PASSWORD';

root@localhost[(none)]>grant all on nextcloud.* to 'nextcloud'@'192.168.XXX.XXX' identified by 'PASSWORD';

NextCloudのインストール

# pkg install nextcloud-php81

/usr/local/www/nextcloudにNextCloud一式がインストールされる、念のためオーナーをwwwに変更する

# cd /usr/local/www
# chown -R www:www nextcloud

Apache24の設定

/usr/local/etc/apache24/httpd.conf

LoadModule rewrite_module libexec/apache24/mod_rewrite.so
LoadModule php_module libexec/apache24/libphp.so

上記2つのモジュールが有効であることを確認

/usr/local/etc/apache24/extra/httpd-vhosts.confの設定 NextCloudをバーチャルホストcloud.DOMAIN.comで運用するための設定

<Directory "/usr/local/www/nextcloud">
   Require all granted
   AllowOverride All
</Directory>
<Directory "/usr/local/www/nextcloud/data">
   Require all denied
</Directory>
<VirtualHost *:80>
   DocumentRoot "/usr/local/www/nextcloud"
   ServerName cloud.DOMAIN.com:80
</VirtualHost>

/usr/local/etc/apache24/httpd.confにインクルードする

方法1: httpd.confに下記1行を追加

Include etc/apache24/extra/httpd-vhosts.conf

方法2:/usr/local/etc/apache24/Includesディレクトリにhttpd-vhosts.confをコピーする

SSLの設定

Apacheの再起動

# apachectl restart

NextCloudのセットアップ

ブラウザからNextCloudに接続

https://cloud.DOMAIN.com

ここで、よくエラーが発生する、ほとんどがパーミッション関係のエラーなのでメッセージやログ/var/log/nextcloud/nextcloud.logを参考に修正する

うまくいくと、管理ユーザー登録及びデータベース接続設定ページが開くので

ユーザー名: ADMIN

パスワード : PASSWORD

データベースユーザー名: nextcloud

パスワード: PASSWORD

データベース名: nextcloud

ホスト:ポート: 192.168.XXX.XXX:3306

以上の項目を登録

Nextcloud26.0からの設定

/usr/local/www/nextcloud/.htaccessの変更

<IfModule mod_env.c>
    # Add security and privacy related headers
            :
    # Header always set X-Robots-Tag "none"
    Header always set X-Robots-Tag "noindex, nofollow"

                        :
  </IfModule>

メンテナンスモードからの復帰

/usr/local/www/nextcloud/config/config.php

                       :
maintenance => true --> false

バックグランドジョブエラー

管理者設定でバックグランドジョブをCronに設定した場合バックグランドジョブが実行されていませんみたいなエラーが発生することがある

上記のように cron.phpを実行するとAPCuが有効でないみたいなメッセージが出ような時は

/usr/local/etc/php/ext-20-apcu.ini

このように設定してあげるとよいようだ


投稿日

カテゴリー:

, ,

投稿者:

タグ:

コメント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です