質問

私は、Apacheの上のmod_wsgiアプリケーションを配置し、カールを使用するクライアントプログラムを持っています。

ユーザ側のCURL APIに、私はそれが接続を再利用しようとしているが、wiresharkのからの接続を見て、私はすべてのHTTPリクエスト/レスポンスのために、新しい接続が行われていることがわかります。

すべてのHTTP要求の終了時に、HTTPレスポンスヘッダは、「閉じる接続」を有します

これはキープアライブと同じですか?私は、接続の再利用を可能にするためのApache / mod_wsgiの側で行うためには何が必要ですか?

役に立ちましたか?

解決

あなたは、一般的に、通常はデフォルトでオンになりアライブ接続を維持するためのサポートとしてApacheに何もする必要はありません。それが設定されているかを動作するようにApacheの設定でのKeepAliveディレクティブを見ます。

その上で、ためのWSGIアプリケーションが応答して、コンテンツの長さを設定する、またはリストは単一の文字列を含む応答のためのリストを返すする必要があります動作するように接続をキープ。この後者の場合のmod_wsgiは自動的に応答するためのコンテンツの長さを追加します。接続は関係なく、閉じられてしまい応答は、一般的に、ほとんどのエラー応答として成功応答する必要があります。

でも、すべてのことをやった、問題は、複数のURLをフェッチするカールの能力もキープアライブ接続を使用するかどうかです。あなたも、この質問をされるように、明らかにカールの別の呼び出しは、することはできませんあなたはカールの機能を使用しようとしている示唆しています。あなたがlibcurlのためにリンクされたカスタムクライアントを使用して、そのライブラリを使用するので、あなたがlibcurlのを意味していた場合にのみ、他のオプションは以下のようになります。

はApacheへのアクセスは、プロキシ経由の場合、プロキシはキープアライブ実装し、その作業から機構全体を停止しない場合があることに注意してください。

より多くの情報を与えるために、あなたはカールを使用しているかを知る必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top