Информация о системе
Цель
Обслуживание веб-приложения с использованием SSL через HTTPS на локальном хосте
Что сделано
- Создано базовое приложение NextJS с использованием Создать следующее приложение
- Сгенерировал сертификат и ключ с использованием OpenSSL и переместил его в каталог проекта
- Добавил зависимость Express
- Настроил приложение для использования экспресса внутри
server.js
- Изменен скрипт для использования
server.js
внутри package.json
скриптов.
server.js
const express = require('express');
const next = require('next');
const dev = process.env.NODE_ENV !== 'production';
const app = next({ dev });
const handle = app.getRequestHandler();
const port = 3000;
const https = require('https');
const fs = require('fs');
const httpsOptions = {
key: fs.readFileSync('./certificates/key.pem'),
cert: fs.readFileSync('./certificates/cert.pem')
};
app
.prepare()
.then(() => {
const server = express();
server.get('*', (req, res) => {
return handle(req, res);
});
server.listen(port, err => {
if (err) throw err;
console.log('> Ready on http://localhost: ' + port);
});
})
.catch(ex => {
console.error(ex.stack);
process.exit(1);
});
ExtraИнформация
Приложение в настоящее время работает при инициализации с использованием yarn dev
.Я пытался обслужить приложение через https, используя этот ответ , но я не смог выяснить, как применить это к моей текущей настройке с помощью NextJS.
Я потратил много времени на исследованиеВ Интернете, как применить это решение, но еще не нашли способ заставить это работать.
Любая помощь очень ценится.