如何生成本地SSL证书

注意:我在macOS上运行了这些命令。 Linux应该以相同的方式工作。我不保证使用Windows。

在项目根文件夹中,运行:

openssl req -x509 -newkey rsa:2048 -keyout keytmp.pem -out cert.pem -days 365

现在运行:

openssl rsa -in keytmp.pem -out key.pem

您现在应该拥有文件cert.pemkey.pem在文件夹中。

使用Express / Node.js,您可以使用以下代码加载证书和密钥:

const fs = require('fs')
const https = require('https')
const app = express()

app.get(’/’, (req, res) => { res.send(‘Hello HTTPS!’) })

https.createServer({ key: fs.readFileSync(‘key.pem’), cert: fs.readFileSync(‘cert.pem’) }, app).listen(3000, () => { console.log(‘Listening…’) })

如果您正在使用create-react-app,更改start中的脚本package.json归档到:

"start": "export HTTPS=true&&SSL_CRT_FILE=cert.pem&&SSL_KEY_FILE=key.pem react-scripts start",

Look at your framework/library documentation on the instructions on how to pass the certificate and key to the app.


More network tutorials: