1

apacheの背後にあるパッセンジャーアプリで8.4MBのファイルをアップロードできません。scpを介して同じファイルを転送するには4.1分かかりました。

エラーバックトレース:

[pid = 10222 file = ext / apache2 / Hooks.cpp:727 time = 2010-05-18 07:13:14.842]:mod_passengerで予期しないエラーが発生しました:HTTPアップロードデータの受信中にエラーが発生しました:ピアによって接続がリセットされました(104)バックトレース:in'boost :: shared_ptr Hooks :: receiveRequestBody(request_rec *、const char *)'(Hooks.cpp:1084)in'int Hooks :: handleRequest(request_rec *)'(Hooks.cpp:459)

注:ユーザーはキャンセルなどをしていません。彼はFirefoxにいました:-)

ログに表示されるその他のエラーは次のとおりです。

  1. [pid = 16593 file = ext / apache2 / Hooks.cpp:727 time = 2010-05-23 23:06:12.156]:mod_passengerの予期しないエラー:ブラウザがファイルのアップロードを完了しなかったようです: 6610086 \バイトをアップロードしましたが、610155バイトを送信した後に接続を閉じました。ユーザーがブラウザで[停止]をクリックしたか、インターネット接続が停止した可能性があります。バックトレース:in'boost :: shared_ptr Hooks :: receiveRequestBody(request_rec *、const char *)'(Hooks.cpp:1084)in'int Hooks :: handleRequest(request_rec *)'(Hooks.cpp:459)

    注:ユーザーはキャンセルなどをしていません。彼はIE6を使用していました:-)

  2. [pid = 28995 file = ext / apache2 / Hooks.cpp:727 time = 2010-05-17 00:40:18.697]:mod_passengerの予期しないエラー:ApplicationPoolサーバーにデータを送信できませんでした:write()が失敗しました:パイプが壊れています(32)バックトレース:in'virtual boost :: shared_ptr Passenger :: ApplicationPoolServer :: Client :: get(const Passe \ nger :: PoolOptions&)'(ApplicationPoolServer.h:402)in'int Hooks :: handleRequest(request_rec *) '(Hooks.cpp:523)

質問は次のとおりです。

  1. ファイルがアップロードされないのはなぜですか?
  2. スループットとパフォーマンスのためのapacheでのファイルアップロードのベストプラクティス。
  3. apacheの外でアップロードを処理してから、乗客に渡すことはできますか
  4. mod_porter、 http: //modporter.comも試しましたが、役に立たないようです。
  5. 乗客にデバッグモードはありますか-詳細なログ

PS:Apache( http://www.modrails.com/ )でmod_railsを使用してデプロイされたRubyOnRailsを、rubyEnterpriseEditionで使用します。TimeOutは、apachevirtalhostで1200に設定されています。

よろしく、
ディーパック

4

2 に答える 2

1

残念ながら、これはおそらく Safari のバグです。このパッセンジャー バグ レポートを参照してください。

Apache の乗客アプリでアップロードできない

そして、この古代の Webkit バグ レポート:

https://bugs.webkit.org/show_bug.cgi?id=5760

次に、表示できないか、閉じられたアップルのバグレポートを指します。パッセンジャー 2.2.14 で 10.6.4 の safari 5.0 (6533.16) の問題を経験したばかりなので、明らかに問題は解決されていません。とてもイライラします。

解決策は、仮想ホストのキープアライブをオフにすることです。

于 2010-06-30T17:57:27.090 に答える
0

610155 バイトをアップロードするのに 1200 秒かかるとしたら? それは完全に合理的なようです。通常、HTTP 転送は scp のようなメカニズムほど積極的ではなく、HTTP はアップロードが特に効率的ではないため、より多くの時間を引きずる傾向があります。

状況に直接影響する場合は、タイムアウトを開いてみるか、何らかの理由で接続を最大時間 (多くの場合約 10 分) に制限するファイアウォールを介して接続しているクライアントがあることを覚えておいてください。

同様の速度の接続から問題を再現できますか? それともより大きなファイルで?

于 2010-05-25T14:22:41.667 に答える