解决启动django,浏览器显示“服务器拒绝访问”的问题

  • Post category:Python

首先,启动Django遇到“服务器拒绝访问”的问题可能是由于防火墙阻止了请求,或者Django没有正确地绑定到正确的端口或IP地址上。下面是解决这个问题的完整攻略。

1. 检查防火墙

第一步是检查防火墙。如果您的系统上有防火墙,它可能防止请求进入或离开您的计算机。您可以通过关闭防火墙或打开相关端口来解决问题。

示例1:在Ubuntu上停用防火墙:

sudo ufw disable

示例2:在CentOS上启用HTTP和HTTPS端口:

sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --add-service=https --permanent
sudo firewall-cmd --reload

2. 检查Django是否正确绑定到端口和IP地址上

接下来,您需要检查Django是否正确绑定到端口和IP地址上。您可以在Django的设置文件中检查这些设置。确保端口和IP地址的设置与您想要显示Django应用程序的设置相同。如果您在本地运行Django,其中一种通用设置是将其绑定到“127.0.0.1”地址和“8000”端口。

示例1:将Django绑定到“127.0.0.1:8000”地址和端口:

# settings.py
ALLOWED_HOSTS = ['localhost', '127.0.0.1']
# ...
# manage.py
python manage.py runserver 127.0.0.1:8000

示例2:将Django绑定到“0.0.0.0:8000”地址和端口(适用于公共网络访问):

# settings.py
ALLOWED_HOSTS = ['localhost', '127.0.0.1', '<your_public_ip_address>']
# ...
# manage.py
python manage.py runserver 0.0.0.0:8000

以上两种示例中,第一段代码是在settings.py中设置允许访问的 IP 地址,第二段代码是使用 manage.py 命令来启动 Django 服务器。如果您想要一个更详细的教程,可以查看Django官方文档。