9

私は現在、HTTPサーバーとしてconnectを使用してnodejsを使用しています。connectでHTTPSをアクティブ化する方法はありますか?それに関するドキュメントが見つかりません。ありがとう。

ヘリー

4

2 に答える 2

16

サーバーを作成する代わりに、接続にサーバーhttpを使用します。https

var fs = require('fs');
var connect = require('connect')
  //, http = require('http'); Use https server instead
  , https = require('https');

var options = {
    key:    fs.readFileSync('ssl/server.key'),
    cert:   fs.readFileSync('ssl/server.crt'),
    ca:     fs.readFileSync('ssl/ca.crt')
};
var app = connect();
https.createServer(options,app).listen(3000);

https ここtlsサーバー(httpsはtlsのサブクラス)のドキュメントをここで参照してください

于 2013-03-17T06:32:57.177 に答える
1

http://tjholowaychuk.com/post/18418627138/connect-2-0から

HTTPおよびHTTPS

以前は、ノードのコアnet.Serverから継承されたconnect.Serverでしたが、これにより、アプリケーションにHTTPとHTTPSの両方を提供することが困難になりました。connect()(以前のconnect.createServer())の結果は、単なるJavaScript関数になりました。これは、app.listen()の呼び出しを省略して、次に示すようにアプリをノードnet.Serverに渡すことができることを意味します。

var connect = require('connect')
  , http = require('http')
  , https = require('https');

var app = connect()
  .use(connect.logger('dev'))
  .use(connect.static('public'))
  .use(function(req, res){
    res.end('hello world\n');
  })

http.createServer(app).listen(80);
https.createServer(tlsOptions, app).listen(443);

エクスプレス3.0はコネクト2.0を継承するため、同じことが当てはまります。

于 2013-03-17T06:32:25.520 に答える