Node를 사용하여 HTTPS 서비스를 구축하는 방법은 무엇입니까? 다음 글에서는 Node.js로 HTTPS 서비스를 구축하는 방법을 소개하겠습니다. 도움이 되셨으면 좋겠습니다!
Node.js는 미니 프로그램에 대한 백그라운드 서비스를 제공하는 데 사용되며 도메인 이름은 HTTPS 프로토콜이어야 합니다. 다음과 같이 Node.js에서 HTTP 서비스를 활성화하는 것은 매우 간단합니다.
const http = require('http'); const server = http.createServer((req, res) => { res.writeHead(200, { 'Content-Type': 'text/html;charset=utf8' }); res.end('访问成功') }); server.listen(8080, () => { console.log('服务已开启'); })
HTTPS 서비스를 사용하려면 두 단계가 필요합니다. 1. SSL 인증서가 필요합니다. 2. Node.js 자체 HTTPS를 사용합니다. 기준 치수.
SSL 인증서를 얻는 방법에는 두 가지가 있습니다.
클라우드 플랫폼을 사용하여 무료 인증서 제공
클릭하여 다운로드하고 서버 유형을 선택하세요
다운로드한 파일은 다음 위치에 있습니다. .key、.pem
为后缀,其中.key
文件是base64加密私钥,.pem
Base64 암호화 인증서
Http에 비해 옵션 매개변수가 하나 더 있습니다.
const https = require('https'); const fs = require('fs'); const path = require('path'); const options = { key: fs.readFileSync(path.join(__dirname, './ssl/9499016_www.linglan01.cn.key')), cert: fs.readFileSync(path.join(__dirname, './ssl/9499016_www.linglan01.cn.pem')), }; const server = https.createServer(options, (req, res) => { res.writeHead(200, { 'Content-Type': 'text/html;charset=utf8' }); res.end('访问成功') }); server.listen(8080, () => { console.log('服务已开启'); })
SSL 인증서에 바인딩된 도메인 이름이 www.linglan01.cn이므로 https://127.0.0.1:8080을 사용하여 서비스에 액세스하면 바인딩된 도메인 이름과 일치하지 않으며, 차단됩니다. www.linglan01.cn에만 액세스가 허용됩니다.
일반적인 액세스를 위해 도메인 이름 www.linglan01.cn을 사용하세요.
직장에서는 개발을 위해 커뮤니티의 Express 및 기타 프레임워크를 사용해야 합니다. Express 및 기타 프레임워크에서 HTTPS를 활성화하는 것도 매우 쉽습니다. :
const https = require('https'); const fs = require('fs'); const path = require('path'); const express = require('express') const app = express(); app.get('/chat', (req, res) => { res.send('我是https') }); const options = { key: fs.readFileSync(path.join(__dirname, './ssl/9499016_www.linglan01.cn.key')), cert: fs.readFileSync(path.join(__dirname, './ssl/9499016_www.linglan01.cn.pem')), }; const server = https.createServer(options, app); server.listen(8080, () => { console.log('服务已开启'); })
Node.js에서 HTTPS 서비스를 구축하는 것은 어렵지 않습니다. Node.js에서는 구축을 빠르게 완료할 수 있도록 HTTPS 모듈을 제공했습니다. HTTPS 서비스는 실제로 온라인 환경에서만 사용됩니다. 로컬 환경에서도 필요한 경우 openSSL 도구를 사용하여 인증서를 생성할 수도 있습니다.
노드 관련 지식을 더 보려면 nodejs 튜토리얼을 방문하세요!
위 내용은 Node를 사용하여 HTTPS 서비스를 구축하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!