NodeJS SSL на хосте, как я могу заставить его работать? - PullRequest
0 голосов
/ 22 апреля 2020

Я пытался включить SSL на своем веб-сайте, но я просто не могу заставить его работать, хотя я настроил весь код в своем приложении. js файл ... всякий раз, когда у меня есть http.createServer его работает и браузер говорит: не безопасно ... Но когда я добавляю https.createServer, сервер вообще перестает работать. веб-сайт работает, и я сгенерировал сертификат, а также попытался скопировать реальный, который пришел с доменом, но не повезло ...

вот мой код, который работает:

var express = require("express"),
    bodyParser = require("body-parser"),
    app = express()
    expressStatic = require("express-static"),
    https = require('https'),
    http = require('http'),
    fs = require('fs'),
    path = require("path");



app.set("view engine", "ejs");
app.use(express.static('public'));
app.use(bodyParser.urlencoded({ extended: true }));

app.get("/", function (req, res) {
    res.render("homepage")
})

var options = {
  key: fs.readFileSync(path.resolve('https/client-key.pem')),
  cert: fs.readFileSync(path.resolve('https/client-cert.pem')),
  ca: fs.readFileSync(path.resolve('https/client.ca-bundle'))
};


// Create an HTTP service.
http.createServer(app).listen(80);

Вот тот, который не работает вообще:

var express = require("express"),
    bodyParser = require("body-parser"),
    app = express()
    expressStatic = require("express-static"),
    typedJS = require("typed.js"),
    https = require('https'),
    http = require('http'),
    fs = require('fs'),
    path = require("path");



app.set("view engine", "ejs");
app.use(express.static('public'));
app.use(bodyParser.urlencoded({ extended: true }));

app.get("/", function (req, res) {
    res.render("homepage")
})

// This line is from the Node.js HTTPS documentation.
var options = {
  key: fs.readFileSync(path.resolve('https/client-key.pem')),
  cert: fs.readFileSync(path.resolve('https/client-cert.pem')),
  ca: fs.readFileSync(path.resolve('https/client.ca-bundle'))
};


// Create an HTTP service.
http.createServer(app).listen(80);
https.createServer(options, app).listen(443);

Должен ли я придерживаться SSL, который поставляется с моим доменом или сгенерированным мной, или как? Как я могу заставить его работать? я также попытался использовать express -force-ssl, но безуспешно.

1 Ответ

0 голосов
/ 22 апреля 2020

Какой у вас сертификат SSL? Если у вас есть подстановочный сертификат или сертификат для указанного домена c, убедитесь, что URL-адрес указывает на порт 443 для сервера, на котором вы запускаете приложение Node.JS на

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...