0

是否可以在 cloud9 IDE 中创建 Node.js https 服务器?

下面是我在 Node.js 中设置简单 https 服务器的示例。

var https = require('https');
var fs = require('fs');
var app = require('./app');

// SSL Configuration
var ca_names = ['CERT-NAME_1', 'CERT-NAME_2', 'CERT-NAME_3'];
var options = {
  key: fs.readFileSync('./folder/server.key'),
  cert: fs.readFileSync('./folder/server.crt'),
  ca: ca_names.map(function(n) {
    return fs.readFileSync('./eid/ca/' + n + '.crt');
  }),
  //crl: ca_names.map(function(n) { return fs.readFileSync('/eid/ca/' + n + '.crl'); }),
  requestCert: false,
  rejectUnauthorized: false
};

var server = https.createServer(options, app);
server.listen(process.env.PORT || 8081, process.env.IP || "0.0.0.0");
console.log('server listening on port: ' + process.env.PORT);

当我尝试连接到服务器时,我收到以下错误:

“ECONNRESET:无法代理请求!”

4

1 回答 1

0

我认为问题在于您正在尝试同时收听 HTTP 和 HTTPS。c9 用作代理,因此即使您尝试使用 HTTPS,您也只需要侦听 HTTP。尝试不听 HTTPS,它应该可以工作。(有关此的更多信息)但是,如果您确实需要 HTTPS,在这种情况下,您可以使用 Nginx 之类的代理通过 HTTPS 在内部代理请求。(有关此的更多信息)在此处输入链接描述

于 2017-03-28T12:46:19.977 回答