httpの仕様でpostで受信するバイト数の上限を規定したものがありますか?


以下の動作環境でpostで128kバイト受信すると
動作がおかしくなるのですが。
OS:Linux RedHat7
httpd:apache Ver1.3.12-25

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2004/06/22 14:08:56
  • 終了:--

回答(6件)

id:ponta_3rd No.1

ponta3rd回答回数196ベストアンサー獲得回数02004/06/22 15:13:00

ポイント10pt

http://www.web-ware.org/np/code_pg_lo_load.html

perl コードサンプル:ファイルアップロード => PostgreSQLにラージオブジェクトとして保存 - CGIとWEBアプリケーションの開発・販売「ウェブウェア・オルグ」

ひょっとして、このような事をされているのでしょうか。

そうであれば、ページ内容を確認してみてください。

もう1つのURLは、参考までに。

技術系の質問は、情報が開示されているほどたどりやすいです。

http://d.hatena.ne.jp/ponta_3rd/searchdiary?word=%2a%5b%a5%ac%a5...

[ガイドライン] - ponta_3rdの[es]ではじめる新生活

id:mamool No.2

mamool回答回数8ベストアンサー獲得回数02004/06/22 14:23:20

ポイント50pt

http://tohoho.wakusei.ne.jp/wwwcgi3.htm#CgiEnvironment

そのファイルは現在ありません

環境変数で指定できるみたいですよ

id:garyo

ありがとうございます。

環境変数 CONTENT_LENGTHでしょうか?

set |grep CONTENT で何も出てこなかったのですが

上限値を設定すればいいのでしょうか?

(受信時のバイト数が入るのではないですよね?)

2004/06/22 14:33:56
id:ponta_3rd No.3

ponta3rd回答回数196ベストアンサー獲得回数02004/06/22 14:28:15

ポイント50pt

apacheの設定のみを疑う場合は、リンク先の

「LimitRequestBody」を参照してみてください。

実際に、アップロードする為には、別の言語

(perlやphp、java等)を使用していると思いますが、

そちらで制限がかかって居ないことが前提です。

id:garyo

ありがとうございます。

httpd.confと.htaccessを調べて見ましたが

LimitRequestBodyは未設定のようでした。

2004/06/22 14:48:16
id:alcus No.4

alcus回答回数85ベストアンサー獲得回数02004/06/22 14:46:50

ポイント100pt

「0 以上のどんな Content-Length も正当な値である。」とある通り HTTP 的には制限はありません。

受け取るCGIなりのバグかと思われます。

id:garyo

ありがとうございます。

postgres+apache+perlでやっています。

httpでの制限が無いことがわかり納得しました。

CGI等の問題でしょうね。

2004/06/22 14:54:52
id:kn1967 No.5

kn1967回答回数2915ベストアンサー獲得回数3012004/06/22 14:50:59

ポイント50pt

Apacheならばhttp.confにてLimitRequestBodyの設定を変えてみてはいかがでしょう。

(すでにご存知かと思いますが、CONTENT_LENGTHは参照のみ可能なのものです)

id:garyo

ありがとうございます。

http.confでLimitRequestBodyは設定されていませんでした。

2004/06/22 15:06:09
id:mamool No.6

mamool回答回数8ベストアンサー獲得回数02004/06/22 15:00:35

申し訳御座いません。質問を取り違えてました。

ポイントなしで結構です。

id:garyo

いえいえ、回答頂きありがとうございました。

以下のファイルに128kが上限と記載されていたので

そういう仕様があるのか知りたかったのです。

上限がないということが分かったので満足しました。

http://www.webpower.jp/websofts/others/libraries/stdio/

STDIO.PL/8.06 旧バージョン ZIP 445,759バイト (マニュアル・サンプルプログラム同梱)

getUrlencodedFormData()

STDIO.pdf:10ページ

◆送信データの上限

GET メソッドで受け取ることができるデータの上限は、4K(4096)バイトです。POST メソッドで受け取るこ

とができるデータの上限は、128K(217=131072)バイトです。これは、HTTP プロトコルの仕様であって、この

関数の制限ではありません。ブラウザやサーバーが対応していれば、これを超えるサイズも送信・受信できます。

stdio.pl では、POST メソッドで受信可能なデータサイズの上限をパッケージ変数$max_byte で定義しています。

デフォルトでは、128KB で、これを超えると受信を中止して、戻り値には何も返しません。

2004/06/22 15:13:18
  • id:alcus
    気になったので

    気になったので HTTP/1.0 (RFC 1945)も見てみましたが特に記述が見つかりませんでした。「最低限これくらいは処理してほしい」という要求項目があったのでしょうか。

    ちなみに最新版のマニュアルからは制限の記述はなくなっていました。
  • id:garyo
    Re:気になったので

    >気になったので HTTP/1.0 (RFC 1945)も見てみましたが
    ありがとうございます。サーバーの担当者から質問があったのですが、
    私もpostの上限値は聞いたことが無かったので質問しました。

    >ちなみに最新版のマニュアルからは制限の記述はなくなっていました。
    そうですね。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません