web-dev-qa-db-ja.com

PHP-FPMの最大アップロード/投稿サイズを増やす

Ubuntu 14.04のNginxでphp5-fpmを実行しています。アップロードの最大サイズを増やしたい。

_/etc/php5/fpm/php.ini_を編集して、次の行を以下のように定義しました。

_upload_max_filesize = 20M post_max_size = 25M_

php5-fpmとnginxを再起動しましたが、phpinfo()は、投稿とアップロードでそれぞれ8Mと2Mの制限を示しています。

ここで見逃したことはありますか?

24
harryg

問題はphp5-fpmの再起動にありました。一部の子プロセスが再起動時に終了しないことがあるバグがあるようです。 kill <process id>でプロセスを識別したため、ps -efでプロセスを手動で強制終了する必要がありました。

その後、php5-fpmを完全に再起動して、構成の変更を有効にすることができました。

6
harryg

Nginx

  • client_max_body_size

PHP

  • post_max_size
  • upload_max_filesize

そして、再起動またはリロードします。

ソース: http://nginx.org/en/docs/http/ngx_http_core_module.html#client_max_body_size

39
Tan Hong Tat

再起動に問題があったため、プロセスを強制終了して手動で開始しました。

Sudo pkill php5-fpm
Sudo service php5-fpm start
11
Pszt

Php.iniファイルを変更する代わりに、nginxサイトで利用可能なファイルにすべての情報を追加します。あなたがずっと前にあなたの答えを得たようですが、これは私がそれをする方法です:

私の仮想ホストのサーバー{}ブロックの下に、次を追加しました:

client_max_body_size 128m;

次に、場所に〜.php $ {}ブロックを追加しました:

fastcgi_param PHP_VALUE "upload_max_filesize=128M \n post_max_size=128M";

8
WoodyDRN

これは古い質問であり、すでに回答済みです。しかし、私は@harrygと私の後に来る他の人たちのためにここでコメントしたかった。

問題は、php5-fpmの再起動にバグがあることでした。これを書いている時点では、問題は修正されているようで、ubuntuでのphp5-fpmの再起動は次のコマンドを実行するのと同じくらい簡単です。

_service php5-fpm restart
_

注:現在、このバージョンのphp5-fpmを実行しています:PHP 5.5.9-1ubuntu4.9 (fpm-fcgi) (built: Apr 17 2015 11:44:58)

これが役立つと誰かが願っています。

3
chris.nesbit1

「Content-Length」リクエストヘッダーフィールドで指定された、クライアントリクエストボディの最大許容サイズを設定します。 /etc/nginx/nginx.confファイルの制限を50MBに増やす例を次に示します。

すべてのサーバーブロック(仮想ホスト)に影響するhttpブロックで設定します。

http {
    ...
    client_max_body_size 50M;
}

特定のサイト/アプリに影響するサーバーブロックで設定

server {
    ...
    client_max_body_size 50M;
}

ロケーションブロックで設定します。これは、サイト/アプリの下の特定のディレクトリ(アップロード)に影響します。

location /uploads {
    ...
    client_max_body_size 50M;
} 

ファイルを保存し、Nginx Webサーバーを再起動して、次のコマンドを使用して最近の変更を適用します。

# systemctl restart nginx
0
Amit Kumar