Django App 部署到 Google Cloud 的问题

2019-12-20 15:23:07 +08:00
 Henrybsbhp
最近写了一个接口项目想要部署到服务器上,服务器用的 Google Cloud,一切都还挺顺利。

生产环境中调用 python3 manage.py runserver 0.0.0.0:8000 命令后,使用外网 IP:8000 时不能访问。

检查了 8000 端口,有开放;
防火墙关闭也不行;

代码内应该也没问题,这样设置的:
DEBUG = True

ALLOWED_HOSTS = ['*']


请问还有什么样的原因导致无法访问呢?本人刚接触 Django,各位请多赐教。谢谢。
4430 次点击
所在节点    Python
28 条回复
hflyf123
2019-12-20 15:26:24 +08:00
你现在服务器本机上访问看看返回正常不正常,然后再排查外部环境
Henrybsbhp
2019-12-20 15:36:11 +08:00
@hflyf123

感谢回复,

curl 127.0.0.1:8000 了一下,在本地是可以的。
wuwukai007
2019-12-20 15:39:44 +08:00
外面 telnet 看一下 ip 8000 能不能通
007gzs
2019-12-20 15:41:00 +08:00
Google Cloud 里看看有没有安全组
AM2coder
2019-12-20 15:41:46 +08:00
是'*' 还是 * ?
alw1329
2019-12-20 15:42:38 +08:00
Google Cloud 里安全组要放通端口。
hflyf123
2019-12-20 15:43:02 +08:00
@AM2coder 是'*'
AM2coder
2019-12-20 15:44:41 +08:00
@hflyf123 我的意思是是不是要设为[*]呢,不太记得了,试一下吧
Henrybsbhp
2019-12-20 15:54:15 +08:00
@wuwukai007

感谢回复,测试了,不行。

nodename nor servname provided, or not known
wuwukai007
2019-12-20 15:55:30 +08:00
外面能 ping 通吗
janxin
2019-12-20 15:56:53 +08:00
@AM2coder debug=True 时不需要

@Henrybsbhp GCP 的安全组(非本机防火墙)要放开
Henrybsbhp
2019-12-20 16:01:18 +08:00
@wuwukai007

感谢回复,就是 GCP 的防火墙吗?应该是放开的。
Henrybsbhp
2019-12-20 16:01:38 +08:00
@wuwukai007

感谢回复,ping IP 倒是没问题。
wuwukai007
2019-12-20 16:04:16 +08:00
ip 没问题一定是端口了,把启动改成 0.0.0.0:80,再访问一下
Henrybsbhp
2019-12-20 16:07:11 +08:00
@wuwukai007

端口改成 80 的时候提示我没有权限访问此端口。

Error: You don't have permission to access that port.
wuwukai007
2019-12-20 16:08:26 +08:00
启动不了,加上 sudo
wuwukai007
2019-12-20 16:08:54 +08:00
如果被占用
fuser -kn tcp 80
Henrybsbhp
2019-12-20 16:36:41 +08:00
@wuwukai007

不知道为啥,sudo python3 不行。找不到命令。。。
wuwukai007
2019-12-20 16:59:04 +08:00
ln -s /usr/local/bin/python3 /usr/bin/python3
pkuphy
2019-12-20 17:04:19 +08:00
VPC 网络 - 防火墙规则 把 8000 加一下

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/630862

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX