2009-04-30 6 views
1

キープアライブ接続のマングースを使用しようとしましたが、最初に接続を閉じると思われます。mongoose Webサーバーでリンクを有効にする方法

私は接続を送り返すようにembed.cを変更しました:キープアライブ。接続は応答後も閉じられます。

[email protected]:~$ nc 127.0.0.1 9999 
GET /test_get_request_info HTTP/1.1 
Connection: keep-alive 

HTTP/1.1 200 OK 
Content-Type: text/plain 
Connection: keep-alive 

Method: [GET] 
URI: [/test_get_request_info] 
HTTP version: [1/1] 
HTTP header [Connection]: [keep-alive] 
Query string: [] 
POST data: [] 
Remote IP: [2130706433] 
Remote port: [56719] 
Remote user: []   <-----------------connection closed, nc returns 
[email protected]:~$ 
+0

このような専門的な質問がある場合は、http://groups.google.com/group/mongoose-users/topicsのMongooseサポートグループに投稿する方がよいでしょう。 –

答えて

6

現在、モングースコードを変更せずにはできません。しかし、コールバックからこれを行うためのより良いメカニズムが存在しなければならない

} else if ((cb = find_callback(conn->ctx, FALSE, uri, -1)) != NULL) { 
     if ((strcmp(ri->request_method, "POST") != 0 && 
      strcmp(ri->request_method, "PUT") != 0) || 
      handle_request_body(conn, -1)) { 
       cb->func(conn, &conn->request_info, cb->user_data); 
       conn->keep_alive = TRUE; // ADD THIS LINE 
      } 

: あなたがトリック、analyze_request()関数を作ってみることができ、キープアライブフラグを設定します。

関連する問題