asp.net-core - 如何从公共 Internet 访问 HTTP 端口 5001
问题描述
我有 Windows Server 2016 数据中心 x64、.NET Core SDK 5.0 预览版、Microsoft SQL Server 2019
在服务器上:https://localhost:5001/publisher/一切正常
在服务器上https://127.0.0.1:5001/publisher/一切正常
在服务器上:防火墙打开端口 5000-6000 出站
从我的电脑(或世界上的任何电脑)https://45.118.145.72:5011/publisher/all not ok
解决方案
Asp.NET 核心应用程序使用默认设置绑定到“localhost”网络接口。其他主机无法使用此网络接口。
UseUrls()
您可以在主机设置期间修改它。
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
webBuilder.UseUrls("http://0.0.0.0:5001");
});
例子:
webBuilder.UseUrls("http://127.0.0.1:5001"); // only from localhost
webBuilder.UseUrls("http://localhost:5001"); // only from localhost
webBuilder.UseUrls("http://0.0.0.0:5001"); // allow all hosts
推荐阅读
- npm - mocha 无法编译 ES6,即使使用正确的选项
- java - 如何将图像下载 URL 从 FireBase 存储发送到 SQLServer 数据库?
- ruby-on-rails - 在 Google App Engine 中运行 Rails 时出现错误 500
- android - 从android将文件上传到Amazon S3 url?
- php - 无法打开 smtp.gmail.com:587
- spring - SOAP 如何与 Spring Reactor 的 WebClient 一起使用?
- php - 根据 Eloquent 模型中的值使用 2 个不同的列
- javascript - 有没有办法打印一个完整的日历?
- javascript - 如何比较 2 个数组,从数组的匹配项中返回键以重写第一个数组中的键
- java - 如何为不同的活动使用相同的 XML 布局?