メインコンテンツまでスキップ

ConoHaWingでNextcloudを構築する[2025年]

ConoHaWingでNextcloudを構築する方法の2025年度の簡易テストです。

過去にWordPressで手順を作ってましたが古いのとWordPressからドキュザウルスに変更して消えたので2025年度版です。

通常利用をするならOracleのArmを借りることをおすすめします。私はそっちでNextcloudを使ってます。

Nextcloud Officeもホワイトボードもそっちなら使えます。

これは構築の簡単なメモです。

構築する

1.Nextcloudの公式サイトにアクセスしてダウンロードへ

2.ダウンロードからNextcloud Serverを押すと以下のセクションへ自動で飛ぶのでコミュニティプロジェクトを選択する

3.Webインストーラーをダウンロードする。

4.WebインストーラーをダウンロードしてConoHaWingのドメイン フォルダ直下へアップロードする。

5.アップロード後、インストーラーを含むページへアクセスします。
今回、私はConoHaWing契約時の無料ドメインへテストの為いれました。
例(https://momijiina.conohawing.com/setup-nextcloud.php)

6.ディレクトリ名を決める。私はテストのためそのままです。

Nextを押した後にインストールを待ちます。
バッググラウンドでnc.zipをダウンロードしてきて展開しているみたいです。
ConoHaWingが重いとインストール失敗する場合もあります。
その場合は直接ダウンロードしたバージョンをnc.zipっていうファイル名にしておけばいけます。
とりあえず私は問題なくインストール完了しました。

7.管理者アカウントの作成とデータベース

admin等の推測可能な物は避けましょう。

データベースについて ConoHaWingはMysqlが5.7と古い為、一人利用とかならSQLiteでいいです。 今回はSQLiteを使います.
どうせどっちも警告でるのでこのままインストール開始

SQLiteのメリット
設定が非常に簡単で、特別なデータベースサーバーをインストール・管理する必要がありません。
小規模な利用であれば、パフォーマンスも十分。
ファイルベースなので、バックアップや移行が容易。

SQLiteのデメリット
同時アクセス数が多い環境や大規模な利用には向きません。
複数のNextcloudサーバーでデータベースを共有することはできません。

8.インストールが完了すると以下のようになります。 理由はURLが勝手にこうかわります。
http://nextcloud/index.php/core/apps/recommended

自分のドメインをURLに挿入する https://momijiina.conohawing.com/nextcloud/index.php/core/apps/recommended

9.推奨アプリ画面が開くのでお好みでインストールしてください。
後からでもアプリストアで入れられます。

10.インストール完了!

どうやらsetup-nextcloud.php で何も設定しないと最新版が入るみたいです。

私の好み的には不具合回避のためにひとつ前の30等を入れたいところです。

その他の設定

更新ボタンを押すたびに以下の画像のようにポップが開く場合はWAFのせいです。
除外リストに入れるか切ってもらえばでなくなります。
WAFのOFFは推奨しません。

ドメインへ接続してきたものを /nextcloudへ飛ばす

.htaccess

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/nextcloud/
RewriteRule ^(.*)$ /nextcloud/$1 [R=301,L]
</IfModule>

概要を確認する

とんでもないエラー量で笑いました。 修正方法は検索すると出るのでそちらを参考にしてください。

Nextcloudの最終的なphp.iniと.htaccess

とりあえず私のphp.iniと.htaccessです。
php.iniに関してはとりあえずの値を設定しているので調整してください。

php.ini

memory_limit = 1512M
upload_max_filesize = 5140M
post_max_size = 5140M
max_execution_time=0
max_input_vars=6000
apc.enable_cli = 1
opcache.interned_strings_buffer = 64
opcache.memory_consumption=512
opcache.max_accelerated_files=8000
opcache.revalidate_freq=2
opcache.fast_shutdown=1
zlib.output_compression = off

.htaccess

<IfModule mod_headers.c>
Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains"
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^\.well-known/webfinger /nextcloud/index.php%{REQUEST_URI} [R=301,L]
RewriteRule ^\.well-known/nodeinfo /nextcloud/index.php%{REQUEST_URI} [R=301,L]
RewriteRule ^\.well-known/caldav /nextcloud/remote.php/dav/ [R=301,L]
RewriteRule ^\.well-known/carddav /nextcloud/remote.php/dav/ [R=301,L]
RewriteCond %{REQUEST_URI} !^/nextcloud/
RewriteRule ^(.*)$ /nextcloud/$1 [R=301,L]
</IfModule>