1

データを IIS (7.5) に POST し、データを PHP (5.3.5) アプリケーション (FastCGI 経由) に渡す Web アプリケーションの問題をデバッグしようとしています。

このページには、ユーザーが新しいフィールドを追加できる動的なフォームがあるため、ページによってポストされるキーと値のペアの数はさまざまです (テーブルの各行に対して 6 つの新しいキーと値のペア)。一部のユーザーは完全に頭がおかしくなり、大量のデータを追加しました。これは、場合によっては、POST 本文に 1,000 を超えるキーと値のペアが存在することを意味します。

IIS、FastCGI、または PHP のいずれかが、POST 本文のキーと値のペアの数を制限しているようです。Fiddler は、ブラウザーが 1,000 以上のすべてのペアを正しく送信していることを教えてくれますが、PHP を使用して $_POST のすべてのキーをすぐにエコーすると、リストが縮小されます。投稿されたすべての値にはデータが含まれていますが、データが含まれていなくても、キーを削除すべきではないと確信しています。

この問題をグーグルで調べても役に立たないので、誰かがここで経験を積むことを願っています. 明確にするために:

  1. アプリケーションの再設計は検討中かもしれませんが、最後の手段としてのみです
  2. POST されるデータの量はまだ少なく、リクエスト全体は約 50kb です。
  3. マジック ナンバーは 1,000 前後のようです (1,005 かもしれませんが、テストはちょっと面倒なので、完全に確実とは言えません)

これについての考えは非常に高く評価されます!

4

2 に答える 2

3

最終的に答えはこのスレッドから来ました

PHPmax_input_varsが問題でした

于 2012-06-09T02:08:21.993 に答える
0

IISには、別の投稿から見つかった要求制限があります。

IIS 7のHTTPS経由のPOSTに制限はありますか?

ダイナミックフォームをやっているようです。Googleドキュメントの「フォーム」を確認し、フォーム全体のコンテンツをAJAXを介してサーバー側に部分的に更新することを検討することをお勧めします。これにより、接続の帯域幅と安定性がより多く消費されますが、1000または1005の制限は解決されます。

別のアプローチは、ユーザーの期待を制御し、上限を設定します。

于 2012-06-07T02:52:26.497 に答える