Sumor Cloud 도구입니다.
추가 문서
Express를 사용한 SSL 웹 서버, HTTP/2 지원
npm i @sumor/ssl-server --save
Node.JS 버전 18.x 이상 필요
이 패키지는 ES 모듈로 작성되었으므로 package.json
파일에서 다음 코드를 변경해야 합니다:
{
"type": "module"
}
import createApp from '@sumor/ssl-server'
const app = createApp()
// 기본적으로 포트 443에서 listen하며, 80을 https 443으로 리다이렉트합니다.
await app.listen()
console.log('Server running at https://localhost:443/')
루트 폴더 ssl
에 다음 이름으로 SSL 파일을 추가해주세요:
domain.crt
domain.key
ca.crt
(선택 사항, 인증서 체인에 추가됩니다)찾을 수 없을 경우, 서버는 자체 서명된 인증서를 생성합니다.
SSL 파일이 변경되면 자동으로 다시로드됩니다.
express 기능을 모두 지원하며 listen
및 close
메서드가 다를 뿐입니다. 자세한 내용은 아래 예시를 참조하세요.
import createApp from '@sumor/ssl-server'
const app = createApp()
import bodyParser from 'body-parser'
// express 미들웨어를 추가할 수 있습니다
app.use(bodyParser.json())
// 라우트 추가
app.get('/', (req, res) => {
res.send('Hello World!')
})
// listen은 async 함수입니다
await app.listen()
import createApp from '@sumor/ssl-server'
const app = createApp()
// listen은 async 함수입니다
await app.listen()
// close는 async 함수입니다
await app.close()
import createApp from '@sumor/ssl-server'
const app = createApp()
// listen은 async 함수입니다
await app.listen(8443, 8080)
console.log(`Server is running on https://localhost:8443/`)
console.log(`Redirect server is running on http://localhost:8080/`)
import createApp from '@sumor/ssl-server'
const app = createApp()
// listen은 async 함수입니다
await app.listen(null, 8080)
console.log(`Redirect server is running on http://localhost:8080/`)
기본적으로 SSL 서버는 최신 express 장기 지원 버전을 사용합니다. createApp
함수에 전달하여 자체 express 앱을 사용할 수 있습니다.
import createApp from '@sumor/ssl-server'
import express from 'express'
const expressApp = express()
expressApp.get('/', (req, res) => {
res.send('Hello World!')
})
const app = createApp(expressApp)
// listen은 async 함수입니다
await app.listen()
console.log('Server running at https://localhost:443/')