Для подключения HTTPS в fastify вам понадобится SSL-сертификат и закрытый ключ. Вы можете получить их от организации, выдавшей вам ваш домен, или сгенерировать их самостоятельно.
1. Сгенерируйте ваш SSL-сертификат и закрытый ключ, если у вас их еще нет. Для этого вы можете воспользоваться инструментом, таким как OpenSSL.
2. Создайте новый файл JavaScript с именем server.js
и откройте его.
3. Установите fastify с помощью следующей команды:
npm install fastify
4. Вставьте следующий код в файл server.js
:
const fastify = require('fastify')({}) fastify.register(require('fastify-https-redirect')) fastify.register(function (fastify, options, done) { const httpsOptions = { key: fs.readFileSync('/path/to/your/private.key'), cert: fs.readFileSync('/path/to/your/certificate.crt') } fastify.register(require('fastify-https'), httpsOptions) fastify.get('/', function (req, reply) { reply.send({message: 'Hello, world!'}) }) done() }) fastify.listen(3000, function (err, address) { if (err) { fastify.log.error(err) process.exit(1) } console.log(`Server listening on ${address}`) })
5. Обратите внимание, что вам необходимо заменить путь к вашему закрытому ключу (/path/to/your/private.key
) и вашему сертификату (/path/to/your/certificate.crt
) в коде выше.
6. Сохраните изменения в файле server.js
.
7. Запустите ваш сервер, выполнив следующую команду:
node server.js
Теперь ваш сервер будет работать на порту 3000, используя HTTPS.
Это весь процесс подключения HTTPS в fastify. Учтите, что в приведенном выше коде не обрабатывается перенаправление HTTP на HTTPS. Если вы хотите, чтобы ваш сервер автоматически перенаправлял соединения HTTP на HTTPS, вы можете использовать плагин fastify-https-redirect, как показано в коде выше.