openshift 上的 Node.js 应用程序

标签 node.js ssl express openshift

我对在本地运行良好的快速应用程序有疑问

node server.js

但是在 openshift 上有这个错误:

...

    Uninitialized option at server.js:104:9 events.js:72
    throw er; // Unhandled 'error' event
          ^
    Error: listen EACCES
    at errnoException (net.js:901:11)
    at Server._listen2 (net.js:1020:19)
...

我知道这将是我的 .createServer().listen 实现的问题。 我的代码是:

var express = require('express');
var path = require('path');
....//I cut code from here..Bunch of middleware..
var https = require('https');
var http = require('http');

....//My routes were here...
var app = express();

//HTTP
var server_port = process.env.OPENSHIFT_NODEJS_PORT || 8080;
var server_ip_address = process.env.OPENSHIFT_NODEJS_IP || '127.0.0.1';
http.createServer(app).listen(server_port);

var ssl = {
key: fs.readFileSync('keys/key.pem'),
cert: fs.readFileSync('keys/cert.pem')
};

https.createServer(ssl, app).listen(443);

我也想使用 ssl,但找不到相关信息。

最佳答案

server = require('http').createServer(app)

port = process.env.OPENSHIFT_NODEJS_PORT || 8080  
ip = process.env.OPENSHIFT_NODEJS_IP || "127.0.0.1";

server.listen(port, ip);

过去一直为我工作。我不完全相信重新排列你必须匹配的东西(因为你的几乎相同)但它是如何在我当前的 nodejs 应用程序中工作的。此外,对于进一步的上下文,您可以在 server.js:104:9 events.js:72 粘贴未初始化选项中的行,如果您已经这样做了,您可以标记它们吗?据我所知,您的东西应该 可以工作。

关于openshift 上的 Node.js 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25271618/

相关文章:

javascript - 使用nodejs fs 模块将路径添加到文件名中?

node.js - pm2下如何运行nuxt?

http - 使用 HTTPS 而不是 HTTP

javascript - 没有 ssl 的 Web 加密 API

javascript - 将数组从 View 传递到 Controller

node.js - 尝试使用 gulp 构建一个简单的项目时出现此错误

node.js - MongoDB count() 未定义

java - 使用 SSLContext.getDefault() 在 Spring 使用 SSL 设置 Ignite 集群

mysql - 服务器版本,以便在第 1 行\'\' testusername\'\' 附近使用正确的语法' }

node.js - Helm : How to allow images to load from different domain (Err: NotSameOriginAfterDefaultedToSameOriginByCoep)