2

nodejs を使用して、http および https リクエストをログに記録する単純なプロキシ サーバーを作成していますが、https リクエストをログに記録できないようです (http リクエストは問題ありません)。

では、安全な接続を設定できるプロキシ サーバーを nodejs で作成するにはどうすればよいでしょうか。

これまでの私のコードは次のようになります

var http = require('http'),
    httpProxy = require('http-proxy'),
    util = require('util'),
    url = require('url');

httpProxy.createServer(function (request, response, proxy) {
   util.log(request.connection.remoteAddress + ": " + 
        request.method + " " + 
        request.url);

   request.addListener('data', function(chunk) {
      util.log("request: " + chunk);
   });
   uri = url.parse(request.url);
   port = 80;
   if (uri.protocol == 'https:') { // NEVER HAPPENS :(
      port = 443;
   }
   util.log("port:" + port + " host:" + uri.host);
   proxy.proxyRequest(port, uri.hostname);

}).listen(8080);

現在、https://github.com/nodejitsu/node-http-proxyプロキシ ライブラリを使用していますが、ライブラリが https をサポートしていない場合 (ソース コードのどこにも設定されていないため、atm をサポートしているようには見えません)任意の資格情報....)、それなしでプロキシ サーバーを書き直して喜んでいます。

4

1 に答える 1

0

しばらくこれを行うことができないように見えますが、最終的に https 接続を適切に機能させる新しい tls モジュールに関するドキュメントがあります。https://github.com/ry/node/blob/5a87bd168d8fbeca7d48b9ddaa3b4e8a9336719c/doc/api/tls.markdown

于 2010-12-09T07:13:52.980 に答える