LoginSignup
6
7

More than 5 years have passed since last update.

ownCloud 初期設定

Last updated at Posted at 2015-12-30

ownCloud と MariaDB のインストール後の初期設定です。ここまで来ると FreeNAS とか h2o とか無関係ですね。

環境

過去に投稿した通りです。
FreeNAS 9.3 jail + h2o + PHP に ownCloud をインストール
FreeNAS 9.3 jail に MariaDB をインストール

名前解決に関する環境は下記。
自宅サーバを立てる際の家庭内名前解決の落とし穴

https を使う為の電子証明書に関する環境というか設定は下記。
FreeNAS 9.3 jail + h2o でオレオレ認証局

ようやく役者が揃いました…:raised_hands:

データベース用意

MariaDB をインストールしたマシンのコンソール画面で作業します。

  • データベース名: owncloud
  • ユーザ名: owncloud
  • パスワード: Naish0!

なお過去記事の通り、ownCloud をインストールしたマシンの名前は jiro.machine.example.com です。ここから MariaDB にアクセスします。

root@maria:/ # mysql -uroot
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 6
Server version: 10.0.22-MariaDB-log FreeBSD Ports

Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> create database owncloud default character set utf8;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> grant all on owncloud.* to 'owncloud'@'jiro.machine.example.com' identified by 'Naish0!';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> quit;
Bye

ownCloud 初期設定

過去記事の通り、ownCloud には https://owncloud.example.com/ でアクセスします。初期画面が表示されますが、ごく普通の ownCloud 設定です。画面の入力欄に必要な情報を入力するだけで、難しい事は何もありません。

  • 管理者の名前とパスワード。適当に決めて入力。
  • データフォルダーはデフォルトが嫌なら適当に決めて入力。我が家は /media/www/owncloud とした。
  • データベースとして MySQL/MariaDB を選択。
  • すると MariaDB の接続情報の入力欄が表示される。上記で作成した通りに入力。
    • ユーザ名: owncloud
    • パスワード: Naish0!
    • データベース名: owncloud
    • データベースホスト: maria

完了ボタンを押してしばらく待つと… https://owncloud.example.com/index.php/apps/files/ が表示されました!やった!:thumbsup:

追記

色々と、調整が必要なようです。メンドクサイなぁ…:sweat: ownCloud を設定して見つかった調整内容を適宜追記します。簡単な内容はコメントに追記するかも知れません。ご注意ください。

最大アップロードファイルサイズ

2MB?なにそれ?なんでそんなに小さいの?しかもownCloudの設定画面では変更できない?どうなってんのPHP?:angry:

この件、かなり根が深いみたいです。調べれば調べるほど設定項目が増えていく…。どうなってんでしょうねPHP:rage: これだからPHPは(以下略)

※追記。参考文献 Uploading big files > 512MB - ownCloud 8.2 Server Administration Manual これは英語ですが、公式サイトの公式文献です。情報は可能な限り一次情報に当たりましょう。これに基づいて、下記内容を修正予定です。

# cd /usr/local/etc
# vi php.ini
《修正内容は下記diff結果を参照》
# diff php.ini-development php.ini
372c372
< max_execution_time = 30
---
> max_execution_time = 3600
382c382
< max_input_time = 60
---
> max_input_time = 3600
393c393
< memory_limit = 128M
---
> memory_limit = -1
660c660
< post_max_size = 8M
---
> post_max_size = 3G
810c810
< upload_max_filesize = 2M
---
> upload_max_filesize = 3G

設定を変更したら h2o を再起動。

# /usr/local/etc/rc.d/h2o restart

PhotoSync との相性

私は iPhone や iPad の写真を同期するのに PhotoSync を使っています。便利なんですよ、帰宅した途端に自宅の Wifi 経由で自動的に転送してくれて。値段も缶ジュース3本分って所ですしね、ケチる理由はありません。

ですが ownCloud と連動させるには WebDAV 経由しかありません。そして ownCloud WebDAV の最後の地雷。

最終的には、別の手段でファイルを転送して該当ディレクトリに配置し、コマンドラインツールを使って ownCloud に読み込ませるしかないのかも知れません。

諦めました!

この環境と設定で ownCloud の WebDAV に対してファイルを書き込むと、150MB弱のファイルの転送終了間際(80〜90%くらいか?いつも同じ頃)でエラーが発生してしまいます。FreeNASのプラグインで ownCloud を導入すると、300MB超でも何の問題もありませんでした。状況から見て PHP の設定がマズいのだと考えていますが、どこをどういじれば解決するのかわかりません。プラグインの ownCloud の設定も少しチェックしたのですが、php.ini はあの分量だし phpinfo() 出力もあの分量だし、とてもとても全部チェックする気にはなれません。httpサーバを h2o から変えてみるとか、色々実験してみたい所ではありますが、とっとと実用に供さないと私のスケジュール管理(カレンダー機能を使用)もままならず、試行錯誤の時間がありません。というわけで発想を変えて、ファイル転送は FreeNAS の WebDAV を使用して、 ownCloud の外部ストレージ機能を利用する事にしました。詳細は別稿にて。

追記

出来ました。結論から言うと、h2oの設定で、http処理時間の上限が10秒に設定されていたのでした。

参考: Configure > HTTP/1 Directives "http1-request-timeout"

1時間(=3600秒)にします。

/usr/local/etc/h2o/h2o.conf
http1-request-timeout: 3600

これで、長大なファイルも転送できるようになりました。やった :thumbsup:

6
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
7