前回のPydioの構築では、Nginxを使用したマニュアルインストールで試みたところ、パブリックリンク設定でどうしても"404 not found"が出てしまい、ネットを探してもApache関連の設定しかないのと、Pydioのドキュメントがイマイチ貧弱で分からなかったので断念。
パッケージインストールを使って、Apache2で再構築しました。ただし前回の続きなので、PHP7とMariaDB(MySQL)はすでにインストール済みです。
> sudo echo "deb https://download.pydio.com/pub/linux/debian/ xenial main" > /etc/apt/sources.list.d/pydio.list
> sudo wget -qO - https://download.pydio.com/pub/linux/debian/key/pubkey | sudo apt-key add -
sudo apt-get update
> sudo apt-get install pydio-all
> sudo apt-get install php-xml
まず、インストールでハマったのは、すでに80番ポートが稼働しているとpydio-all
の途中でインストールスクリプトが失敗して、aptインストールが"half-installded"になって、詰んでしまいました。
apt install -d apache2
でapache2のパッケージをダウンロードさせて、dpkg -i
でapache2だけインストールを完了させて、ポート番号を使ってないポートに変更させることによって、pydio-all
のインストールスクリプトが続行できるようになりました。
Pydioのインストール構成
Pydioはプログラムとデータ部でインストール先が分かれていました。プログラムはこのままで、データ部だけをサイズの大きいパーティションへ移動しました。
- Pydioプログラム本体
/usr/share/pydio
- Pydioデータフォルダ
/var/lib/pydio/data
# 以下に移動
/home/pydio/data
- PHPの設定ファイル
/etc/php/7.0/apache2/php.ini
変更点だけ抜粋
> diff php.ini php.ini.bak
230c230
< output_buffering = Off
---
> output_buffering = 4096
656c656
< post_max_size = 5G
---
> post_max_size = 8M
805c805
< ;upload_tmp_dir = /home/share/Temp/nginx_cache/
---
> ;upload_tmp_dir =
809c809
< upload_max_filesize = 5G
---
> upload_max_filesize = 2M
812c812
< max_file_uploads = 2000
---
> max_file_uploads = 20
1619c1619
< mbstring.language = Japanese
---
> ;mbstring.language = Japanese
1626c1626
< mbstring.internal_encoding = UTF-8
---
> ;mbstring.internal_encoding =
1634c1634
< mbstring.http_input = auto
---
> ;mbstring.http_input =
1644c1644
< mbstring.http_output = UTF-8
---
> ;mbstring.http_output =
1652c1652
< mbstring.encoding_translation = On
---
> ;mbstring.encoding_translation = Off
1657c1657
< mbstring.detect_order = auto
---
> ;mbstring.detect_order = auto
- Apache2の設定
デフォルトポートはports.conf
を直接変更して80番以外に変更。apacheのコンフィグ設定は、シンボリックリンクで、pydioの設定フォルダ内のapache2.confを参照していただけで、こちらは変更なし。
PHPやREWRITEモジュールが必須ですが、デフォルトで利用可能になっていたのでそのまま。
/etc/apache2/ports.conf
/etc/apache2/conf-enabled/pydio.conf -> ../conf-available/pydio.conf
/etc/apache2/conf-available/pydio.conf -> /etc/pydio/apache2.conf
- Pydioの設定
/etc/pydio/bootstrap_context.php
/etc/pydio/bootstrap_conf.php
/etc/pydio/apache2.conf
Localeをja_JP.UTF-8
に変更
> diff bootstrap_conf.php bootstrap_conf.php.bak
32c32
< define("AJXP_LOCALE", "ja_JP.UTF-8");
---
> define("AJXP_LOCALE", "en_EN.UTF-8");
データフォルダを/home/pydio/data
に移動
> diff bootstrap_context.php bootstrap_context.php.bak
31d30
< setlocale(LC_ALL, 'ja_JP.UTF-8');
45c45
< define("AJXP_DATA_PATH", "/home/pydio/data");
---
> define("AJXP_DATA_PATH", "/var/lib/pydio/data");
/home/pydio
のディレクティブとログを追加
> diff apache2.conf apache2.conf.bak
6,8d5
< ErrorLog "/home/pydio/error.log"
< CustomLog "/home/pydio/access.log" common
<
26,32d22
<
< <Directory /home/pydio>
< Options FollowSymLinks MultiViews
< AllowOverride Limit FileInfo
< Order allow,deny
< Allow from all
< </Directory>
MariaDB(MySQL)の設定
基本的に前回の設定と同じ。再構築するため、pydioのデータベースを削除&再作成しました。
Pydioの初期設定
Pydioの構築の後半参照
共有設定について
Application Core
の設定に共有設定がある。基本的に以下のデフォルトのままで変更なし。
テスト用に何かしらのファイルをまず登録する。以下の例だとshare_file.txt
を登録。
公開用のURLが生成されて、ドキュメントに割り当てられる。変更することも可能。また、このファイルに対してのパーミッションも設定できる。ほかには、パスワード保護して特定の人だけアクセスできるようにしたり、期限を設定することもできるようである。
実際にアクセスしてみる。テキストを公開すると、専用のエディタ画面が表示される。Editを許可すると変更できそう。Edit不許可だと、編集できても保存アイコンを押してもエラーになる。押せないようにしたほうが良いと思うが。。