node.js - 在运行 HTTPS 的 IIS 上运行 Nodejs 和 React 时遇到问题
问题描述
在使用 HTTPS 时,我在将 NodeJS 作为 React 应用程序(网站)的后端运行时遇到问题。NodeJS 在端口 3001 上运行,等待请求。当 React 在 HTTP 上的 IIS 上运行并查询 NodeJS (http://localhost:3001) 时,一切都很好。但是,如果我在 React 应用程序上部署 SSL,那么 React 和 NodeJS 之间的通信就会失败。我相信这是HTTPS和HTTP交互的安全限制。
那么问题是,如何在端口 3001 上运行节点但在 HTTPS 上运行以处理 HTTPS 源请求?
我查看了反向代理(https://dev.to/petereysermans/hosting-a-node-js-application-on-windows-with-iis-as-reverse-proxy-397b),查看了 IISnode 没有t 似乎不再受支持,并阅读了在 HTTPS 上运行 NodeJS(这似乎不是一个可行的解决方案)。
寻找任何指导和方向。
非常感激。
解决方案
好的,通常在您询问后 10 分钟,您就会弄清楚。
这就是我解决问题的方式,更有知识的人可能会纠正我。
- 在 IIS 上,你有你的 HTTPS React 网站
- 在 IIS 上创建第二个网站(也安装了 SSL,因此可以通过 Https 访问)。
- 在第二个网站上,您安装反向代理解决方案 ( https://dev.to/petereysermans/hosting-a-node-js-application-on-windows-with-iis-as-reverse-proxy-397b ) 并路由对 NodeJS 应用程序上的端口 3001 的请求。
实际上,这意味着在 Https 上运行的 React 应用程序现在可以在 Https 上调用 NodeJS(例如https://mynode.mysite.com),并且反向代理将请求转发到端口 3001(或您正在运行的端口)上的 NodeJS 应用程序节点)。
如果我错了(这对我有用)或走了很长的路,请随时纠正。
谢谢你。
推荐阅读
- javascript - 如何在 .json 或 .js 文件上使用 react-i18-next?
- html - 知道为什么我的本地网站/视觉工作室预览显示网站与实际现场网站不同吗?
- java - Firebase实时数据库如何在没有密钥的情况下获取子记录
- excel - 如何在 Excel 中使用多个条件进行查找
- javascript - Bokeh Tap 工具作为不同图形的触发回调
- python - 什么叫非下划线方法?
- python - python中泛型类型的继承不能正确进行类型检查
- postgresql - 有没有办法列出与现有 postgres 模式中的表相关的所有视图
- flutter - assets_audio_player 在错误的 url 后崩溃
- java - 用户输入代码后如何关闭视图?安卓