【问题标题】:Django app not opening from different machineDjango应用程序没有从不同的机器打开
【发布时间】:2019-08-18 13:10:43
【问题描述】:

我有一个 Django 服务器在 127.0.0.1:8000 上运行

当我尝试从同一台机器访问它时,我可以打开我的应用程序。但是当我尝试使用 machinename:8000 从另一台机器访问此应用程序时,它会显示“无法访问此站点”

在我的settings.py中,我有

ALLOWED_HOSTS = config('ALLOWED_HOSTS', cast=Csv())

ALLOWED_HOSTS=

这和上面的配置有关系吗?

【问题讨论】:

  • 127.0.0.1:8000 上运行您的服务器使其仅在本地主机上可用。例如,您可以在 0.0.0.0:8000 上运行服务器,以使其可用于网络的另一台机器
  • 如果您的 django 服务器正在侦听 127.0.0.1(环回接口),那么您无法从同一台机器外部访问它。如果您希望应用程序可以从同一网络中的其他计算机访问,请让您的应用程序侦听 0.0.0.0(所有接口)并使用主机的 IP 进行连接
  • 将其更改为 0.0.0.0:8000 表示 - DisallowedHost at / Invalid HTTP_HOST 标头:'garuda10.hyd.amzn.co:8000'。您可能需要将 u'garuda10.hyd.amzn.co:8000' 添加到 ALLOWED_HOSTS。

标签: python django


【解决方案1】:

要与您必须使用运行服务器的同一本地网络中的其他计算机连接:

manage.py runserver 0.0.0.0:8000

然后在你的 settings.py 中放:

ALLOWED_HOSTS = ['*']

而且你必须知道你的电脑的本地 IP 地址并在最后添加“:8000”进行连接。要知道您的计算机 IP 地址: 重击: $ ifconfig 窗户: ipconfig

【讨论】:

  • 我这样做了,但是当我使用“python manage.py runserver 0.0.0.0:8000”启动服务器时,它说 Invalid HTTP_HOST header: '127.0.0.1:8000'。您可能需要将 u'127.0.0.1' 添加到 ALLOWED_HOSTS。
  • 你试过这个 ALLOWED_HOSTS = ['0.0.0.0', 'localhost', '127.0.0.1'] 吗?如果它不起作用,请检查Documentation
  • 您确定:--> 设备在同一个网络中/您尝试的 IP 是您的服务器/PC IP/您在地址末尾添加“:8000”
猜你喜欢
  • 2021-02-04
  • 2016-09-13
  • 1970-01-01
  • 1970-01-01
  • 2012-05-07
  • 1970-01-01
  • 1970-01-01
  • 2015-05-28
  • 2023-03-22
相关资源
最近更新 更多