django - 无法访问我通过 ssh 连接到的服务器上的开发服务器
问题描述
我正在从 Centos 服务器部署 django 应用程序。当我执行python3.6 manage.py runserver 8000
命令时,它会启动开发服务器没问题。我无法从本地计算机访问此页面进行测试。
所以我采取的步骤是:我通过 ssh 进入服务器ssh <user>@url.com
,然后使用上述命令运行开发服务器。然后我转到笔记本电脑上的浏览器并输入 url.com:8000 并会想出Unable to connect
在运行我的 apache 服务器进行生产时,我也遇到了这个问题。我将服务器放在服务器上我没有问题,但我无法访问该网页。
我知道这是非常少的信息,但这听起来像是 url.com 的服务器端问题吗?我应该与管理员联系,还是这可能是我的事情?
也许我需要在我的 django 应用程序中配置我的 settings.py 的地址?
解决方案
您可能想要运行它,以便它侦听任何接口。从文档:
请注意,您网络上的其他计算机无法访问默认 IP 地址 127.0.0.1。要使您的开发服务器对网络上的其他机器可见,请使用其自己的 IP 地址(例如 192.168.2.1)或 0.0.0.0 或 ::(启用 IPv6)。
例如,您应该使用以下命令启动服务器
python3.6 manage.py runserver 0.0.0.0:8000
一般来说,让这样的东西在网络上运行可能是不明智的,尤其是在调试的情况下。从相同的文档链接:
请勿在生产环境中使用此服务器。它没有经过安全审计或性能测试。(这就是它会一直存在的方式。我们的业务是制作 Web 框架,而不是 Web 服务器,因此改进此服务器以使其能够处理生产环境超出了 Django 的范围。)
推荐阅读
- python - 在 Python 中比较 2 个 DataFrame 时出现问题,应排除所有重复项,但工作不正常
- java - 连接关闭方法不起作用,客户端过多错误
- r - 运行香农和辛普森:素食包
- parallel-processing - 在 Julia 中停止 @spawn-ed 任务
- c# - BindingContext 不访问 ViewModel 中的 getter
- ios - UISplitViewController:如何防止每次重新初始化详细视图?
- java - web.xml 中没有为控制器 serverlet 指定 serverlet 映射
- arrays - E11000 在唯一复合索引中插入具有现有第一个元素的数组时出现重复键错误
- c# - 在clipboard.gettext 不活动x 分钟后退出应用程序
- c - 当它是 pb_callback_t 类型时如何对字符串进行编码