nginxとPHP環境におけるPHPアップロードファイルのサイズ制限を変更して、PHPアップロードファイルが2Mを超えてはいけないという制限を解決する方法を紹介しますので、困っている友達は参考にしてみてください。
phpでファイルをアップロードするには、まずphp.iniの設定を変更し、次にサーバー環境を変更します(nginx+phpを使用)。少し大きなファイルはアップロードできないことがわかります。 その理由は、nginx の client_max_body_size 設定オプション値によって引き起こされる 413 エラーです。 問題の説明: php.ini設定ファイルのupload_max_filesizeは50Mに設定されています post_max_size で設定される値は 100M です ただし、10 MB を超えるファイルをアップロードすると、uploaderror 413 エラーが返されます。 サーバー環境: セントス5.7 32ビット nginx1.0.8 php5.2.17 解決策: 1. アップロードファイルの制限が50MBの場合、まずphp.iniをupload_max_filesize 50Mに変更します。 post_max_size 100M 2. 次に、nginx 構成ファイルを変更します。 この構成オプションの値はデフォルトで 1m ですが、ファイル サイズの制限を増やすために 8m に増やすことができます。 これは 100 に直接変更されます。特定の状況は必要に応じて設定できます。 (参考: client_max_body_size のサイズは、php.ini の Upload_max_filesize および post_max_size の最大値と一致するか、それより若干大きくする必要があります。これにより、送信されたデータ サイズの不一致によるエラーが発生しません。) client_max_body_size 100m; まとめ PHP アップロード ファイル サイズ制限の問題が発生した場合は、PHP 自体の構成を考慮することに加えて、nginx や Apache の関連構成項目など、現在のサーバー環境の要因も考慮する必要があります。 |