LoginSignup
4
6

More than 5 years have passed since last update.

PHP でアップロードできる最大容量を変更、反映させる(PHP + Nginx + PHP-FPM)

Posted at

環境

CentOS: 7.4
PHP: 7.2
Nginx: 1.14

設定変更の手順

php.ini を編集

.htaccess で設定する方法もありますが、今回は php.ini を編集します。
私の環境では /etc/php.ini にありました。

# vi /etc/php.ini
/etc/php.ini
; メモリ使用量の上限
memory_limit = 256M

; 1度の POST でアップロードできる最大容量 
post_max_size = 128M

; 1ファイルの最大容量
upload_max_filesize = 100M

; 設定値は下記のようにする
; upload_max_filesize <= post_max_size <= memory_limit

この設定の場合、1ファイル 100MB までアップロード可能になります。

nginx.conf を編集

PHP だけでなく Nginx の設定も変更する必要があります。
nginx.confclient_max_body_size の設定を追記します。

/etc/nginx/nginx.conf
sever {
    listen       80;
    server_name  localhost;

    #アップロード制限
    client_max_body_size 100M;
    ...
}

設定を反映させる

Nginx と PHP-FPM を再起動させて設定を反映させます。
下記2つのコマンドを叩きます。
(以前、PHP-FPM の再起動を忘れていてハマりました。。)

# systemctl restart nginx
# systemctl restart php-fpm

設定が反映されているか確認する

Nginx で設定したルートディレクトリに index.php を置き、サーバーにアクセスすることで設定が反映されているか確認します。

index.php
<?php phpinfo() ?>

うまく設定できていれば upload_max_filesizepost_max_sizememory_limit が設定した値になっているはずです。

4
6
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
4
6