キャンペーン中ということもあり、新たにロリポップ!のレンタルサーバーを借りることにしました。そこにNextCloudをインストールして外部からも利用できるDropBoxみたいなクラウドストレージで活用しようと考えました。
以前にRaspberry Pi で構築したNextCloudは家庭内のサーバーでした。
今回のレンタルサーバーで構築した自分専用クラウドストレージは、画像と書類、音楽ファイルをどこでも取り出せるようにして使っています。贅沢を言わなければコストパフォーマンスは抜群ですよ。
少しハマったので要点をご紹介します。
NextcloudとOwncloud
ロリポップ!レンタルサーバーにはOwnCloudの簡単インストール機能があります。もしもOwncloudで良ければ名称やパスワードなどの情報だけで構築できてしまいます。もちろん追加の費用はありません。
実際にロリポップ!でサーバーを借りてから、Owncloudも簡単インストール機能で構築しました。その後、一旦削除してからNextCloudも試してみました。NextCloudの簡単インストールはありません。
数日に渡り、NextCloudとOwncloudを使ってみた結果、トータルで快適だったのはNextCloudです。
どちらも家庭内に置くサーバーではないのでサーバー自体の管理者権限はありません。なんでも自由に設定できないとはいえ、動作についてはそれぞれ多少の問題がありました。
今回はNextCloudでご紹介します。
Owncloudはロリポップ!に限り、簡単インストールがありますから、ご紹介することが少ないくらい簡単に構築できます。どちらもまだ触ったことがない人は、Owncloudでインストールの不安を感じずにトライしてみてください。
※Owncloudの簡単インストールはハイスピードプランから利用可能です。
NextCloudを運用する制限
Owncloudはロリポップ!が動作保証しているため、あまり余計な設定は必要ありません。それでもクラウドストレージとして使うには色々と制限は出てきます。
システム要件に従うと
NextCloudの公式サイトにあるシステム要件をみると、Apache 2.4 with mod_php or php-fpm (recommended)またはnginx with php-fpmとありました。
レンタルしたロリポップ!サーバーは、Apacheです。これはOKですね。
サーバー側の制限として、php.iniの編集がモジュール版のCGIではできないという仕様です。最初の設定はモジュール版(7.4)でした。これは変更できるので、仮にCGI版にしてもupload_max_filesize(アップロード可能な最大サイズ)は、2MBか20MBから選ぶ形です。これは共用レンタルサーバーなら仕方ありません。

色んなパターンを試したくなり、CGI版に変更してPHP.iniを書き換えても構築しました。設定のせいか不安定だったので、やはりモジュール版で使うことにして再度インストールし直しました。
モジュール版では変更できないながら、100MBのファイル転送に対応しています。これは実際にファイルをアップロードして試しました。
PHPはバージョン7.4(モジュール版)で動作しました。
ファイル転送サイズは1ファイル100MB上限です。
CGI版PHP 20MBまで
モジュール版PHP 100MBまで
事前準備
記事執筆時点で成功しているため、同じ環境かもしくは似ていれば問題ないと思います。参考までに挙げておきます。
格安レンタルサーバーの契約
今回は無難にスタンダードプランにしてみました。
ちょうど19周年記念キャンペーン中で、スタンダードプラン1年6,600円(税込)でした。初期費用3,000円も無料でした。更に後から余分に1年分を無料で利用できる特典付きなので…、実質2年間の利用で6,600円!という破格です。
キャンペーンは時々開催されています。
更にずっと無料で使える独自ドメインが1つ付いてきました。本来ならば1,500円/年くらいかかります。助かります。
ディスク容量はスタンダードの場合は150GB→200GBへアップ。
ディスク容量、転送量がUP!
ディスク容量 150GB→ 200GB 大幅アップ!
転送量 200GB/日 → 700GB/日 大幅アップ!
(2021年5月現在)
ストレージとしてはやや物足りないですか?
それでもDropBoxの無料枠は2GBです。他の無料クラウドサービスも5GBがせいぜいです。私は5GBでは足りないけど、あまり費用を掛けたくありませんでした。
今回、レンタルサーバーの月額換算で550円、キャンペーンで2年間借りられたので月額275円相当だったことになります。僅かな費用で150GB借りられたことに満足しています。
ロリポップ!もブログシステムであるWordpressを簡単にインストールする機能があります。もしもホームページ・ブログの公開であれば、スタンダードプランか、速度重視のハイスピードプランがおすすめです。
更にお手軽なエコノミー、ライトプランもあります。
しかし、容量や転送量の違い以上にできることが制限されます。スタンダードプラン以上をおすすめします。
独自ドメインの適用とSSL証明書の有効
レンタルサーバーに独自ドメインを利用しないのならば読み飛ばしてください。
無料で付いてくることもあって独自ドメインを取得しました。注意点として、最初の入金日から7日後にクーポンが送られてきます。その無料クーポンを使って同グループのムームードメインで取得しないとなりません。だから、NextCloudを構築するのも7日間待たないとならないんですよね。
独自ドメインが取得して有効(DNS登録完了)に出来たら、その後に独自SSL証明書を有効にします。
独自ドメインを使用してNextCloudを利用したいのなら、この2つの手順を経てからセットアップに取りかかると手間がありません。
独自SSLのことはこの後.htaccessで触れます。
WAFの無効
もう一つ、注意点があります。Owncloudでは大丈夫でしたが、NextCloudではロリポップ!のサービスであるWAF(ウェブアプリケーションファイヤーウォール)は無効(OFF)にしてないと、ファイルのプレビューができませんでした。

このWAFの適用によってうまく動かない動作がいくつかありました。どこまで影響しているのか分かりません。少なくてもオフ(無効)にしてから問題ありません。
ファイルのアップロードも失敗したり、NextCloud内に追加できるアプリでも不具合がありました。
同じく海外アタックガードも無効にした方が良いというサイトも見掛けました。今回は有効状態でセットアップできて、大きな不具合もないのでそのままにしています。もしも挙動がおかしい場合は無効にすることも手段かも知れません。
データベースの作成
OwncloudもNextCloudもそのままデフォルトでインストールを進めようとすると、SQLiteが選ばれると思います。本格的なDBであるMySQLの方が良いでしょう。
データーベースに接続するユーザーIDなどが必要なので、MySQLは事前に作成しておきます。

作成後に確認で表示されるサーバー名やデータベース名などを控えておきます。その情報でNextCloudのインストールを進めることになります。
情報を控えるのに、デスクトップキャプチャーをして画像でも保存しておくのは便利ですよ。
事前準備まとめ
- 独自ドメインの適用とSSL証明書の有効にする
- WAFは無効にする(ロリポップ!の場合)
- データベースの作成をしておく(MySQL)
少なくてもこれでインストールは可能です。
特にWAFは無効にしないとファイル情報(管理プレビュー)などに弊害がありました。
https転送
無料の独自SSLを設定した後、.htaccessへ以下を追記することで、httpでアクセスしても自動的にhttps接続にしてくれます。
ロリポップ!のマニュアルには以下のようにあります。
RewriteEngine On
# httpをhttpsに統一
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
本来、最下部に追記するには以下のように書く必要があると思います。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</IfModule>
一応、両方で試しました。mod_rewriteの記述が無くても動作していました。
どうなるのか?
この設定をすると、仮にURL欄に「http://〜」とタイプしてアクセスしても、「https://〜」へ転送してくれるってことです。
鍵マークが付いているのが分かるでしょう。
ちなみにホームページ・ブログでは、このSSL証明が無いと(https://)Googleさんは認めてくれませんので検索に載りません。
セキュリティとしても設定した方が良いでしょう。現在は大抵のレンタルサーバーでは無料で独自SSLを設定できます。
NextCloudのセットアップ
Nextcloudのセットアップは、phpファイルをダウンロードして、レンタルサーバーの任意のフォルダにアップロードしアクセスすることでインストールできる機能があります。

setup-nextcloud.phpファイルをFTPを使いアップロードします。アップロード先は、インストールしたい場所です。
ドメイン直下にインストールする場合
先の独自ドメインの設定で、ルートをどうするのか決めたと思います。公開(アップロード)フォルダに「.」=同フォルダにした場合はロリポップで決めた名前のフォルダへsetup-nextcloud.phpをコピーします。
アクセスするには独自ドメイン名+setup-nextcloud.phpです。
https://独自ドメイン/setup-nextcloud.php
実際にアップロードした場所(ロリポップ!レンタルサーバーの例)
https://ロリポップのドメイン.jp/setup-nextcloud.php
「.」ではなくフォルダ名を決めたのならそのフォルダ内にsetup-nextcloud.phpをコピーします。
サブドメインの場合
今回、独自ドメインにサブドメインを設定しました。サブドメインは任意のフォルダ名を設定しました。(例えばcloud等)そのルートをどうするのか決められます。
例えばcloudというフォルダをルートにすれば、そのcloud内にsetup-nextcloud.phpをコピーし、Webブラウザからアクセスします。
アクセスするにはルート配下になってる。
https://SUBDOMEIN.独自ドメイン/setup-nextcloud.php
実際にアップロードした場所(ロリポップ!レンタルサーバーの例)
https://ロリポップのドメイン.jp/指定したフォルダ名/setup-nextcloud.php
サブドメインの設定をすれば、指定したフォルダ名を独自ドメイン前に充てて、サブドメインが付いていない独自ドメインと内容を分けられるという仕組みです。
https://SUBDOMEIN.独自ドメイン/ → cloud https://独自ドメイン/ → ブログなど
どちらでもいいが変更は大変
単純に直下でも良いですし、公開するフォルダを設定していても問題ありません。
直下だと同じサーバー内でブログなど別のCMSを構築しようとすると厄介なだけです。その場合はサブドメインがおすすめです。
途中で変更することも可能ですけど、データベースをいじらないとならないので、少し敷居が高くなります。
大変なので最初に決めてからの方が良いでしょう。
セットアップ画面
一番肝心な箇所をご紹介しておきます。ここの項目さえ間違っていなければインストール自体は簡単です。

① | 管理社のIDとパスワードを決めて入力します。 |
② | データフォルダーはそのままデフォルトでOKです。 |
③ | データベースはMySQL/MariaDBを選びます。 すると下に④のボックスが現れます。 最初はSQLiteになっています。 |
④ | 上から、 データベースユーザー名、パスワード、 データベース名、データベースホスト名です。 データベース名とパスワードは先に作ったDB用のです。 データベース名は作成後に表示されていたものです。 データベースホスト名は、最初は「localhost」になっています。 ロリポップ!で作成したデーターベース名に置き換えてください。 |
⑤ | 推奨アプリは後から個別に入れたり削除もできます。 |
そんなに時間もかからずあっという間に終わります。

ファイル転送100MB制限対策
NextCloudは追加のモジュールアプリがあります。ほとんど無料で導入できます。
実はここが大きな理由でOwncloudを辞めました。
—— 本来のOwncloudがどうかは別にして、少なくてもロリポップ!の簡単インストール機能で入れたOwncloudは、安定こそすれど自由度がなく、アプリもあまり入れられません。ここで紹介するアプリもありませんでした。
安定を取ってサポートしているOwncloudか、自由に追加モジュールを入れられるNextCloudか、悩みますね。
以下からはNextCloudに追加したアプリモジュールです。
Flow Upload
ファイルを分割してアップロードできるアプリにFlow Upload(https://apps.nextcloud.com/apps/flowupload)がありました。大きなファイルを何回かに別けて細切れで送ってくれます。
試したところできました。100MB以上でもOKです。
ただ、CPUに負荷が掛かるので、共用レンタルサーバーだと怖いですね。それに転送量を調整するのに少し難しい。

見事にBig Buck Bunnyのmp4ファイルが時間はかかれどアップロードできました。サイズは画像のように350MBくらいあります。
今回は、素直に100MB以下のデータで利用しようと思います。
使い勝手と運用方法
格安レンタルサーバーを使って構築したNextCloudは、どうなのか? ザックリとお伝えします。
NextCloudは同期ができるデスクトップアプリやiOSなどスマホ・タブレットで操作できるモバイルアプリがあります。もちろんLinuxにも対応しています。それらも含め、概ね体感速度は問題ありません。むしろ速度はWi-Fiでもスマホアプリでも通信環境によります。
現在、ラズパイダのサイト内で利用しているキャプチャ画像などはすべてNextCloud内へ上げました。あとから修正したりするのに必要で、枚数もそれなりになってしまっていますので、デスクトップアプリで同期しています。
モバイルアプリでは、音楽ファイルをアップロードして聴いています。
私は主に有料のSpotifyをメインで聴いています。かなりの楽曲が見つかりますが、それでも超マイナーな曲は無かったりします。そういう楽曲だけアップロードしてみました。導入したアプリモジュールはflac形式にも対応しているので便利です。

音楽の再生は追加のモジュールにMusicアプリが2つありまして、どちらもでも再生可能でした。
PCで再生すればPCのスピーカーから、iPhoneで再生すればiPhoneで聴けるのは便利です。これで昔のCDを引っ張り出してスマホに転送せずに聴くことができますのでおすすめです。同じことはDropBoxなどでも可能とはいえ、オリジナルのマイクラウドってのはまた趣が違い良いですね!
レンタルサーバーならば、ネット回線があればアクセスできるので、Raspberry Piからも利用できます。あまり勝手に使えないレンタルサーバーとはいえ、小さなファイルならば有効です。
1ファイル100MBにはなってしまいますが、150GBのディスク容量があるので、主にあげているファイルは…
- 作成したドキュメントファイル
- PDF(主に家電などの説明書)
- 画像ファイル(主にキャプチャ画像)
- mp3、Flacの音楽ファイル
特におすすめなのは、家電など説明書のPDFファイルです!
ほとんどのメーカーでは説明書はPDFでダウンロード可能になっています。だから付属している説明書を捨ててもOKなんですよ。
それも古い物だと見つからないこともありますから、私は購入したらPDFでダウンロード、もしくは必要な箇所だけスキャンしマイクラウドストレージで管理しています。
逆に個人情報バリバリのファイルはやはり怖いですね。セキュリティもそうですけど、自分が誤ってNextCloudを不具合状態にさせたらと思うと…。
以上、格安レンタルサーバーを使って構築したNextCloudでした。
Raspberry Piにインストールする場合は、自宅内のファイルサーバーとして活用できます。
おまけのヒント
最初に設定した方がいいのがメールアドレスとメール送信用のSMTP設定です。

これが設定されていないと、パスワードを忘れた時にリセット出来なくなります。別に忘れなくても、PHPやDBに何かあるとアクセスできなくなったりします。(経験談)
再度リセットをかければメールが飛んできて新しいパスワードを設定できます。最初だけのことですから面倒でも設定しておきましょう。おまけでした。