2012-01-17 5 views
11

が大きすぎ、私はこのメッセージを取得し、リクエストエンティティ

Request Entity Too Large 
The requested resource 
/index.php 
does not allow request data with POST requests, or the amount of data provided in the request exceeds the capacity limit. 

私は.htaccess

php_value post_max_size 50M 
php_value upload_max_filesize 50M 

を設定するが、これを克服するための方法

を助けていませんか?

おかげ

+0

fwiw、私は同じエラーがありました。それは私がPOST要求を使用していたが、フィールドを渡さなかったためであった。 content-lengthはおそらく無限であると思われるゼロである。 – changokun

答えて

11

あなたがPHPのmemory_limitpost_max_sizeupload_max_filesizeの上昇を超えているの後、私は多分そのうちの一つは、問題を解決し、あなたのトピックに関連するいくつかの記事をお勧めしたいと思います。

私は、サーバー障害でこの記事を見つけました:
https://serverfault.com/questions/79741/php-apache-post-limit/79745#79745

  • sybreonContent-Lengthにダブルチェック、およびへの示唆 - 引用 - 「あなたは直接を通じてのApacheに接続していないことを確認プロキシまたはリバースプロキシのいずれかを使用します。逆プロキシの中には、セキュリティ対策の一種として要求の最大サイズを制限するものがあるため、Apacheログだけでなく、行く。

  • sybreonこの投稿を共有する:Apache 413 error problems
    mod_sslモジュールをApacheで使用している場合は、のみ適用されます。
    記事を引用する:
    "私はApache SSLクライアント証明書を使用していましたが、制限は128Kです。再ネゴシエーションを行わなければならない場合は、POSTが失敗します。 。あなたのSSLサーバのデフォルトだけでなく、ディレクトリを次のように設定する必要が

    SSLVerifyClient require 
    

    をそれ以外の場合、それはある種の再ネゴシエーションを強制し、413エラーで失敗 -
    This Bugzilla postingは手がかりを持っていました。 "

  • 前の記事ではLimitRequestBodyの指示文も説明しました。
    A guy says here that the appropriate setting of this directive solved his problem.

これらの設定のいずれかがこの問題を解決することを願っています。

7

私にとっては唯一のことは、SSLバッファサイズをチューニングすることでした。これを設定することができます。

<Directory /my/blah/blah> 
... 
    # Set this to something big... 
    SSLRenegBufferSize 10486000 
... 
</Directory> 

...変更を有効にするには、Apacheを再起動してください。 (見つけた:http://forum.joomla.org/viewtopic.php?p=2085574

3

私のサーバーはApacheです。 mod_securityモジュールは大規模なデータのポストを約171KBにしないようにしました。 mod_securityで以下の設定をしました。PHPでmax_post_uploadとmax_file_uploadが設定されている場合

SecRequestBodyNoFilesLimit 10486000 
SecRequestBodyInMemoryLimit 10486000 
0

、 CONFその後、おそらく.htaccessファイルが動作する十分な

高く設定LimitRequestBodyのApache2.confまたはModSec設定ファイルの設定があります。
  1. はそれでアップロードPHPファイルとディレクトリに移動します(ファイルまたはページにエラーを投げる。)

2。 .htaccessの作成または編集

3。 LimitLequestBody 20971520の行を編集または作成します( )。

  1. .htaccessを保存します。権限を設定します。 (644とApacheの所有者)

  2. おそらくApacheを再起動します。

多田。うまくいけばいい。

この設定では、このフォルダの制限を設定します。これは、大きなパケット/大量のDOS攻撃を可能にするphpとapacheのグローバル設定を回避する1つの方法です。

LimitRequestBody 0は無制限のアップロードを提供します。