【问题标题】:How configure Blazor Web server to listen IP addresses?如何配置 Blazor Web 服务器以侦听 IP 地址?
【发布时间】:2020-03-29 06:16:26
【问题描述】:

我构建了一个 Blazor Web 应用服务器,在机器上运行它,但它仅在 localhost 上响应,即 http://localhost:5000 但是当我从外部主机查询时没有响应 http://myhostIP:5000 这个 myhostIP ping 正常。固件关闭。 在VS2019的项目设置中: 应用网址:https://localhost:5001;http://localhost:5000

如何配置 Blazor Web 服务器以使用 appsetings.json 侦听(所有)主机 IP 地址而不进行硬编码?

【问题讨论】:

  • 问题仍然存在,需要帮助:-)

标签: blazor-server-side


【解决方案1】:
【解决方案2】:

在我的例子中,我在文件launchSettings.json 中添加了条目https://*:5001,使其看起来像这样:

"applicationUrl": "https://localhost:5001;http://localhost:5000;https://*:5001"

【讨论】:

    【解决方案3】:

    如果您使用Kestrel,则它不适合在本地主机之外使用。您可以使用反向代理(例如Nginx)将您的应用程序暴露给外部世界。

    图片来自 MSDN:

    【讨论】:

    • 是的,Kestrel。但我认为你提供了一种方法。我测试的第二种方法:将应用程序复制到 linux 机器,将环境变量 ASPNETCORE_URLS 设置为机器 IP,并且可以从外部主机访问该站点。但这对最终用户来说并不舒适。我想在 appsettings.json 中配置
    • 除了端口共享之外,您还想在 Kestrel 上使用成熟的 Web 服务器还有其他原因:安全性、日志记录、生命周期管理、高效的静态文件处理......
    • 问题是如何解决这个问题:localhost:5000 - 适用于本地主机,hostIP:5000 - 不适用于本地主机
    • 顺便说一句,来自同一个文档:“Kestrel 可以单独使用,也可以与反向代理服务器一起使用”
    • 当然可以,但它不提供您通常在成熟的 Web 服务器中找到的功能
    猜你喜欢
    • 2017-08-12
    • 1970-01-01
    • 2015-06-30
    • 1970-01-01
    • 1970-01-01
    • 2013-11-07
    • 1970-01-01
    • 2017-08-17
    • 2013-11-05
    相关资源
    最近更新 更多