为什么 ASP.NET Core 对开发环境默认开启 HTTPS?

2022-04-05 23:32:38 +08:00
 rv54ntjwfm3ug8

难道 127.0.0.1 还能被劫持?生产环境不一般都是套反代的,HTTPS 也是在反代实现吗?

1566 次点击
所在节点    程序员
6 条回复
kiracyan
2022-04-05 23:34:41 +08:00
不是有两个端口吗
rv54ntjwfm3ug8
2022-04-05 23:42:46 +08:00
@kiracyan

1.要手动删跳转代码访问 HTTP 才不会跳 HTTPS
2.Angular 那个模板删了跳转代码还会跳 HTTPS 的 Angular Server ,要删好几处才能不跳

3.我只是想问问这样做的目的是什么,真的会更安全吗,如果是为了开发 PWA 我记得 localhost 有 HTTPS 豁免
sunhelter
2022-04-05 23:48:34 +08:00
因为自带 Kestrel 作为 Server ,实际生产可以直接用,也可以用反代
moen
2022-04-05 23:49:34 +08:00
根据 https://devblogs.microsoft.com/dotnet/configuring-https-in-asp-net-core-across-different-platforms/ 里说法是为了提供一个接近使用生产环境的开发环境,而这种开发环境的需求可能和 web 前端里调用浏览器的某些功能强制 https 有关。至于反代的话,有些人不一定喜欢在开发环境额外部署。可能会存在部署多个主机调试的需求,这时候就用不了 localhost 了
poorcai
2022-04-06 08:38:48 +08:00
好像在新建项目时有一个是否启用 https 的勾选框?
vone
2022-04-06 09:59:01 +08:00
1 、创建项目时可以选择是否使用本地 https
2 、反代是 Kestrel 或者 IIS Express ,取决于你项目的启动方式
3 、开启本地 HTTPS 的原因是因为浏览器部分新特性只在安全上下文里可用,参考链接: https://developer.mozilla.org/zh-CN/docs/Web/Security/Secure_Contexts
http://permission.site/

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/845101

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX