从Windows访问在wsl2上运行的django时出现err_connection_refused,但可以从Windows终端进行curl

2024-01-24

我拿到err_connection_refused当尝试从 Windows 访问在 wsl2 (http://localhost:8000) 上运行的 django 时,但是当我使用curl http://localhost:8000从 Windows 终端 bash 来看,它工作正常。我尝试为端口 8000 添加新的防火墙入站规则,但仍然不起作用。还有什么需要我照顾的吗?

多谢


看来是转发问题。 WSL2 的接口是 NAT 的,而 WSL1 默认情况下是桥接的。 WSL 似乎对端口进行了一些“自动转发”,但仅限于本地主机。然而,有时这种自动转发机制似乎会“崩溃”。罪魁祸首似乎是休眠或 Windows 快速启动(两者都是密切相关的功能)。

  • 如果您执行以下操作,问题是否会解决wsl --shutdown然后重新启动 WSL2 会话?如果是这样,请尝试禁用 Windows 的快速启动 https://www.tenforums.com/tutorials/4189-turn-off-fast-startup-windows-10-a.html。由于系统上的不同(非 WSL 问题),我已经禁用了快速启动,因此这可能与我的原因有关not能够重现。

  • 同样,您是否会休眠而不是关闭电源?在这种情况下,一个wsl --shutdown也可能会解决。

对于未来的读者,请注意,对于大多数在评论中投票和回复的人来说,上述两点似乎解决了问题。但是,如果这对您不起作用,以下是我最初的“附加建议”:

  • 有关一些其他想法,请参阅这个 github 问题 https://github.com/microsoft/WSL/issues/4636。对于可能需要的服务有一些建议。 (附带问题 - 您运行的是 Windows 家庭版还是专业版?)

  • 您的 Windows 主机文件(例如c:\windows\system32\drivers\etc\hosts)将 localhost 指向 127.0.0.1 以外的 IP?如果我尝试通过本地 Windows IP 地址(而不是 127.0.0.1 或 localhost)进行访问,我也会收到 ERR_CONNECTION_REFUSED 错误。

  • 既然您正在查看防火墙规则,也许查看转发规则而不仅仅是入站允许?

  • 如果所有其他方法均失败,请尝试导出/备份 WSL2 会话(请参阅wsl --export),然后将其作为新的 WSL1 会话导入。看看那里是否有效。

在我的 WSL2/Ubuntu 20.04 系统上,我尝试通过以下步骤进行重现(但尚未能够):

mkdir -p ~/src/dj-test
cd ~/src/dj-test
python3 -m venv dj
source dj/bin/activate
pip install Django
django-admin startproject config .
python manage.py runserver

(虽然我用过activate.fish因为我正在运行鱼壳)

从 Windows 中的 Vivaldi Web 浏览器访问localhost:8000,返回“安装成功!恭喜!...”

curl在 Powershell Core 下也能正常工作。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从Windows访问在wsl2上运行的django时出现err_connection_refused,但可以从Windows终端进行curl 的相关文章

  • Django 模板:输出带有所有小数位的浮点数

    我如何在 django 模板中输出这个数字 小数位数是可变的 我事先不知道 x 0 000015 1 x 输出是 1 5e 05 2 x stringformat f 输出是 0 000015 这不是本地化的 应该有逗号 我需要对输出进行本
  • 如何在 Django 中使用 UUID 自动填充预先存在的数据库条目

    我已将 UUID 添加到以下模型 class Post models Model uuid models UUIDField default uuid uuid4 editable False 但是数据库中已经有一些条目是在没有创建的情况下
  • 在 Django(Python) 中向用户提供 Excel(xlsx) 文件下载

    我正在尝试使用 Django 创建和提供 Excel 文件 我有一个 jar 文件 它获取参数并根据参数生成 excel 文件 并且它可以正常工作 但是 当我尝试获取生成的文件并将其提供给用户下载时 文件损坏了 它的大小为 0kb 这是我用
  • Django 自定义文件存储系统

    我有一个自定义存储 import os from django core files storage import Storage class AlwaysOverwriteFileSystemStorage Storage def get
  • 具有 auto_now_add 的 Django DateTimeField 要求默认值

    我的模型中有这个字段created at models DateTimeField auto now add True 当我尝试进行迁移时出现错误 You are trying to add the field created at wit
  • Django:使用 Django ORM 实现 JOIN?

    我有一个用 Django 构建的问答类型的网站 具有以下模型 class Question models Model title models CharField max length 70 details models TextField
  • localhost 拒绝在 chrome mac 中连接

    我正在使用 webpack dev server 使用此命令运行服务器 npm run dev 当我使用npm start 它工作得很好 但不想这样做 因为它是为了生产 到目前为止我的服务器运行良好http 本地主机 3000 http l
  • 如何使用 Django 项目设置 SQLite?

    我已阅读 Django 文档 仅供参考 https docs djangoproject com en 1 3 intro tutorial01 https docs djangoproject com en 1 3 intro tutor
  • .htaccess 主要用于 localhost

    我在本地主机上使用 wamp server 虚拟主机名为www xyz com我有一个通过 git 设置的部署服务 它将代码部署到服务器上www xyz in 这是我的 htaccess 代码 RewriteEngine on Rewrit
  • Django 中基于类的视图分页

    我正在尝试对基于类的视图进行分页 这是我的观点 class IssuesByTitleView ListView context object name issue list def issues request issue list Is
  • 使用 ADFS 本​​地组织身份验证和 Visual Studio 2013 本地主机开发的 MVC5 Web 应用程序

    我正在尝试创建一个配置为使用本地组织身份验证选项 ADFS 的 MVC5 Web 应用程序 如下所述维托里奥 贝尔托奇的作品 http www cloudidentity com blog 2014 02 12 use the on pre
  • 具有模型目录和AUTH_USER_MODEL

    I have myApp models profiles py代替myApp models py 对相关模型进行分组 你怎么设置AUTH USER MODEL在这种情况下 因为 auth 只接受 foo bar 模式 app label m
  • ER_ACCESS_DENIED_ERROR:用户 ''@'localhost' 的访问被拒绝(使用密码:NO)

    我有这个问题 我已经研究过但无法解决它 我想它与数据库权限有关 但我无法修复它 if error throw error Error ER ACCESS DENIED ERROR Access denied for user localho
  • django 中计数器的原子增量

    我正在尝试自动增加 Django 中的一个简单计数器 我的代码如下所示 from models import Counter from django db import transaction transaction commit on s
  • Django“模型”对象不可迭代

    我有一张表 其中显示了已注册的员工 我想根据他们的数据库生成一个简单的 HTML 页面 其中包括他们的姓名 id 职称等 为此 我将一个 id 传递给视图 以便它可以获取相应用户的详细信息并向我显示 一切正常 直到出现错误对象不可迭代 下面
  • Django 1.6 的静态文件

    我花了一整天但没有任何作用 我在这里看到了至少 20 篇关于同一主题的帖子 它们各不相同 有不同的建议 但没有一个对我有用 使用 Python 2 7 运行 Django 1 6 我正在尝试从 django 教程加载民意调查应用程序的 cs
  • Django Rest Framework 序列化器中的聚合(和其他带注释的)字段

    我正在尝试找出添加带注释字段的最佳方法 例如将任何聚合 计算 字段添加到 DRF 模型 序列化器 我的用例只是一种情况 端点返回的字段未存储在数据库中 而是从数据库计算得出 让我们看下面的例子 模型 py class IceCreamCom
  • Django - 简单的搜索表单

    使用 Django 1 9 和 Python 3 5 我想制作一个简单的搜索表单 views py from django views import generic from django shortcuts import render f
  • Django NoReverseMatch

    我有以下设置 landing pages views py urls py In urls py当我尝试访问时 我有以下内容 competition from django conf urls defaults import from dj
  • 在 django 查询集上使用 iterator()

    我最近遇到了一些奇怪的行为 需要检查我的理解 我在模型中使用一个简单的过滤器 然后迭代结果 e g allbooks Book objects filter author A A Milne for book in allbooks do

随机推荐