サーバー環境
今回行ったのは下記のサーバー環境です。
OS | Ubuntu 1.6LTS |
Webサーバー | Nginx 1.1 |
PHPFpm | 7.0 |
ISPConfig | 3.2.1 |
設定前の値を確認
PHPfpmのファイルアップロードサイズ上限を確認
phpinfo()にて設定前の値を確認します。バーチャルホスト内のwebディレクトリーに下記ファイルを__info.phpのファイル名で作成します。
<?php
phpinfo();
?>
ブラウザーでアクセス
http://ドメイン名/__info.php
phpinfoのページには多くの情報が表示されますが、upload_max_filesizeのキワードで検索します。
2つ値が表示されます。左が、ローカルの設定値、右側がブローバルの設定値です。ローカル設定値は.htaccessでディレクトリー単位で設定を変更する場合にグローバルと設定値が異なりますが、今回はNginxなので.htaccessが利用出来ないので両方とも同じ値になります。
Nginxのファイルアップロードサイズ上限を確認
NginxにはWebから確認する方法が無いので、コマンドラインから確認します。
sudo nginx -T 2>&1 | grep --color client_max_body_size client_max_body_size 100M;
バーチャルホスト毎に設定があれば、上記2行目の結果が複数表示されるはずです。
ISPConfigでの設定方法
- ISPConfigにログイン後、Sites→バーチャルホストを選択→Optionsタブをクリック
- Custom php.ini settings: のテキストボックスに下記の行を追加。(10MBへ変更する例)
post_max_size = 10M
- nginx Directives:のテキストボックスに下記の行を追加
client_max_body_size 10m
Nginxのデフォルトファイルアップロード上限サイズは、何と…1MB! - Saveボタンを押して1分間待つ
- 再びphpinfoのページへアクセスしてupload_max_filesizeが10Mに変更されている事を確認
- __info.phpを忘れずに削除!