在 Gunicorn 中配置 HTTPS 证书路径
·
在 Gunicorn 中配置 HTTPS 证书路径,您可以通过以下两种主要方式实现:
1. 使用命令行参数
在启动 Gunicorn 时,使用 --certfile 和 --keyfile 参数分别指定证书文件和私钥文件的路径。
gunicorn --bind 0.0.0.0:443 --certfile /path/to/cert.pem --keyfile /path/to/privkey.pem your_app:app
2. 使用配置文件
创建一个 Gunicorn 配置文件(例如 gunicorn.conf.py),在其中指定证书路径:
# gunicorn.conf.py
bind = '0.0.0.0:443'
certfile = '/path/to/cert.pem'
keyfile = '/path/to/privkey.pem'
然后,通过以下命令启动 Gunicorn,指定配置文件:
gunicorn -c gunicorn.conf.py your_app:app
注意事项
- 文件路径:确保提供的证书和私钥文件路径是正确的绝对路径。
- 文件权限:确保证书和私钥文件的权限设置正确,防止 Gunicorn 进程无法读取。通常,建议将文件权限设置为仅对运行 Gunicorn 的用户可读。
- 证书格式:Gunicorn 通常支持 PEM 格式的证书和私钥文件。
- 端口绑定:使用 HTTPS 时,需要绑定到 443 端口。如果使用非 root 用户运行 Gunicorn,可能需要使用高于 1024 的端口,或者通过
setcap命令赋予 Gunicorn 进程绑定低端口的权限。 - 证书来源:
- 自签名证书:适用于测试环境,但在浏览器中会显示安全警告。
- 受信任的 CA 颁发的证书:适用于生产环境,例如从 Let’s Encrypt 获取的免费证书。
示例
假设您的证书文件 cert.pem 和私钥文件 privkey.pem 存放在 /etc/ssl/certs 目录下,使用命令行参数配置 HTTPS 的示例如下:
gunicorn --bind 0.0.0.0:443 --certfile /etc/ssl/certs/cert.pem --keyfile /etc/ssl/certs/privkey.pem your_app:app
通过以上步骤,您就可以成功在 Gunicorn 中配置 HTTPS 证书路径,使您的应用程序通过安全的 HTTPS 协议提供服务。

更多推荐


所有评论(0)