centos7 禁止ip访问_Django 网站允许外部访问的设置方法

83b131fd5781e3d16fdf3bd3233a30a9.png

笔者最近正在学习Django,学习过程中一般都是在本机上使用 manage.py runserver 命令启动开发用HTTP服务器,使用本机浏览器访问此服务器。相信大多数人在学习中都是这样操作的。

那么如果需要在联网的其他电脑上访问这个Django服务器,则需要额外做一些设置,否则会显示无法连接或连接失败等错误。

以笔者使用的 CentOS7 + Python3.7.1 + Django2.1.4 环境举例说明,首先我们启动开发服务器时,应使用如下命令:

./manage.py runserver 0.0.0.0:8000

命令中需指定IP与监听端口,IP为0.0.0.0表示允许所有连接,端口8000必须未被占用。

编辑此开发服务器的 settings.py,在找到其中的这一行设置

ALLOWED_HOSTS=[ ]

在其中的方括号中输入本服务器的IP地址,如果服务器有多个IP,则输入允许用那个IP接受访问,例如,服务器有两个IP为 192.168.34.54, 170.199.201.130,则可设置为:

ALLOWED_HOSTS=["192.168.34.54", "170.199.201.130", ]

请注意这里也可以使用*通配,但不推荐这样做,因为可能会有安全风险:

ALLOWED_HOSTS=["*", ]

接下来我们需要设置防火墙,开放8000端口。注意下述操作需要管理员权限。

查看所有开放的端口:

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

如没有8000端口,则将8000端口永久开放:

firewall-cmd --zone=public --add-port=8000/tcp --permanent

重新加载配置信息:

firewall-cmd --reload

一切就绪,此时从其他电脑就可以访问此Django服务器了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值