【问题标题】:express http client connect to server , https client can't connect to server表示http客户端连接服务器,https客户端无法连接服务器
【发布时间】:2020-06-26 11:22:46
【问题描述】:

我已经制作了一个可以很好地使用 http 的服务器。服务器已启动,我可以使用 Chrome 和 Postman 连接到它。当我将服务器切换到 https 时,服务器已启动,但我无法使用 Chrome 和 Postman 连接到它。 ssl 密钥由 certbot 签名。

server.js

const https = require('https');
const app = require(__dirname+'/app');
const fs = require('fs');

const port = 80;
const options = {
    cert: fs.readFileSync("ssl/v2/fullchain.pem"),
    key: fs.readFileSync("ssl/v2/privkey.pem")
}

https.createServer(options, app).listen(port);
console.log(port);

app.js

const express = require('express');
const morgan = require('morgan');
const body_parser = require('body-parser');

const homepage = require(__dirname+'/routes/homepage');
const user = require(__dirname+'/routes/user');
const test = require(__dirname+'/routes/test');
const table = require(__dirname+'/routes/table');
const catalog = require(__dirname+'/routes/catalog');
const cart = require(__dirname+'/routes/cart');
const payment = require(__dirname+'/routes/payment');

const app = express();

app.use(morgan("dev"));
app.use(body_parser.json());
app.use(body_parser.urlencoded({extended: true}));

app.use("/", homepage);
app.use("/user", user);
app.use("/test", test);;
app.use("/table", table);
app.use("/catalog", catalog);
app.use("/cart", cart);
pp.use("/payment", payment);

module.exports = app;

【问题讨论】:

    标签: node.js express ssl https certbot


    【解决方案1】:

    ...服务器已启动,但我无法使用 Chrome 和 Postman 连接到它

    从您的描述中不清楚究竟如何您尝试连接到服务器,但我假设您将尝试一个简单的https://example.com/

    const port = 80;
    ...
    https.createServer(options, app).listen(port);
    

    但是根据您的代码,您尝试在为纯 HTTP (80) 保留的端口上使用 HTTPS,而不是使用 HTTPS (443) 的默认端口。因此,https://example.com/ 将不起作用,因为这将尝试使用端口 443,并且您需要使用 https://example.com:80/ 显式指定不同的端口。但更好的选择当然是在代码中首先使用 HTTPS 的默认端口,即 443 而不是 80。

    【讨论】:

    • 这项工作,我没有意识到 http 和 https 有 2 个不同的默认端口。我现在觉得自己像个白痴。
    猜你喜欢
    • 1970-01-01
    • 2016-07-06
    • 1970-01-01
    • 1970-01-01
    • 2012-10-15
    • 2012-03-27
    • 2012-05-22
    相关资源
    最近更新 更多