django启动成功后,公网ip无法访问解决

django项目部署到服务器后,runserver 127.0.0.1:8000 启动成功


django启动成功后,公网ip无法访问解决_第1张图片
WX20190828-142536.png

但是浏览器访问公网ip,显示无法连接被拒绝。

根据搜索引擎得到的资料,进行了如下配置

  1. setting.py中添加如下设置
ALLOWED_HOSTS = "*"
  1. 项目运行到0.0.0.0:8000而不是127.0.0.1:8000
python manager.py runserver 0.0.0.0:8000

本以为到此应该是没问题了的,结果一跑还是连接不上,很迷。
我买的是腾讯云的服务器,所以就去提了个工单,一会儿回复,猜测是系统防火墙规则限制,过滤了8000端口


于是去检查了下防火墙的状态,使用如下命令

firewall-cmd --zone=public --list-ports

结果显示FirewallD根本就没有运行

FirewallD is not running

于是只能再去看下iptables,试着进行了下如下的操作

iptables -F //清除预设表 (filter) 中的所有规则链中的规则

再跑一下,居然好了,端口果然就是被这个防火墙的预设表给过滤了。

大家新买的服务器一定要注意注意这些隐藏的设置,不然后面可能会遇到很多坑。

你可能感兴趣的:(django启动成功后,公网ip无法访问解决)