django - 截至 2019 年 9 月,使用从 Let's Encrypt Certbot 获得的 ssl 在 Digital Ocean 上托管 Django 应用程序
问题描述
我正在尝试在我的域名上启用 ssl,在我按照 certbot 网站上的步骤为我的新域设置 ssl 后,我在运行时收到错误 port 80 is already in use python3 manage.py runserver 0.0.0.0:80
。
我正在使用 nginx,这就是我的索引页面上显示的内容。我想在将gunicorn绑定到该端口之前测试https,但它会起作用吗?
我在两周前尝试过这样做,并且效果很好。安装了 nginx 和 ssl 证书并运行python3 manage.py runserver 0.0.0.0:80
,它正在工作
解决方案
当 nginx 运行时,您将无法使用runserver
,因为 nginx 正在使用端口 80。如果您需要使用,您有几个选项runserver
:
- 通过 Web 门户中的 Digital Ocean 网络选项打开另一个端口,在该端口上运行 runserver(可能是端口 8000?)
- 需要使用时停止nginx服务
runserver
我不明白的一件事是,runserver
如果你有 nginx 和 gunicorn,为什么你需要运行。我猜两周前你跑runserver
的时候没有运行 nginx 守护进程。祝你好运!
推荐阅读
- c# - 我如何使用 ESC POS 生成 qrcode?
- http - 会话 cookie 可以用于向网络服务器发送许多请求吗
- google-analytics - CRMint - 使用 GAAudiencesUpdater 修补时超出写入速率限制
- c - 错误:“int”类型的参数与“uint8_t *”类型的参数不兼容
- .net-core - HttpClient.PutAsync 返回 400 Bad Request (.Net Core / Blazor)
- python - Python 组列表到子列表的列表是单调的,元素之间的差异相等
- python - 从 Arduino 绘制实时串行数据,除非手动关闭,否则绘图不会更新?
- python - numpy数组的唯一标识符?
- php - 如何在管道到 PHP 进程后保持输入流打开?
- mongodb - 用于 Mongodb 慢查询的 Logstash Grok 过滤器