node.js - 我可以在 2 个特定端口上使用 https 运行 2 个 node.js express 吗?
问题描述
我面临一个我无法单独解决的问题。我在我的 linux 服务器上运行了 2 个 node.js 服务器实例,但是在端口 4000 上运行的一个运行良好,但是在端口 6000 上运行的一个却不工作。
请参见下面的示例:
端口 4000:
端口 6000:
我检查了服务器上的端口,一切似乎都很好:
请参阅下面我的 2 个实例的代码:
const express = require('express');
const cors = require('cors');
const fs = require('fs');
const https = require('https');
var app = express();
app.use(cors());
app.use(require('body-parser').json());
var privateKey = fs.readFileSync('/etc/letsencrypt/live/moreapp.com.br/privkey.pem', 'utf8');
var certificate = fs.readFileSync('/etc/letsencrypt/live/moreapp.com.br/fullchain.pem', 'utf8');
var credentials = {key: privateKey, cert: certificate};
var httpsServer = https.createServer(credentials, app);
app.get('/', (req, res) => {
res.send("Hello World");
});
httpsServer.listen(6000, () => {
console.log("Server Listening");
});
你能帮忙解决这个问题吗?
谢谢
解决方案
我认为您应该为您的请求发布完整的错误。您在端口 6000 上获得了哪个 http 代码?
如果您通过防火墙调用服务器,您是否正确授权了该端口上的请求?
编辑:端口 6000 似乎是一个禁止端口。他被许多浏览器阻止,也可能被您的 http 工具阻止。尝试更改您的端口,然后重试。
来源:Chrome 端口被阻止
推荐阅读
- python - 将样式多索引熊猫保存到excel时出现KeyError
- android - 如何使用 Android WebView 显示一个简单的三个 JS 网页?
- excel - 提示用户选择一个单元格,从该单元格获取和存储字符串
- r - dplyr:基于列计数的子集行
- android - 在 Flutter 项目的 build.gradle 中找不到 android 块
- java - 无法解析符号“列表”和 android studio 中的许多其他关键字
- woocommerce - 当产品“缺货”时,Woocommerce 将属性“Stockstatus”设置为“已售出”
- c# - 在 C# 中写入和读取文件的问题
- reactjs - 如何在保存时关闭碳模态
- python - 如何从 HTML 表中获取子元素编号始终变化的元素?