首页 > 解决方案 > 如何在主机 0.0.0.0 上运行 create-react-app

问题描述

更新:我发现问题是 create-react-app 永远不会将主机更改为 0.0.0.0。这是由于我在工作中运行它的网络。如果我从烧瓶服务器中删除 0.0.0.0 ,它会给出相同的错误。它仅适用于 0.0.0.0 作为 Flask 中的主机名,但我找不到在其上运行反应服务器的任何方法。它只在 localhost:3001 和 ip:3001 上运行,这两者都给我带来了 https 错误。

我无法从 create-react-app 启动示例应用程序,并且 TLS 1.2+ 是我的工作网络支持的唯一协议。

我为 React 制作了一个 .env 文件,如下所示。但是,Chrome 表示它不是受信任的证书,不会加载。有没有办法强制使用 env 变量的协议?

HTTPS=true
HOST=0.0.0.0
PORT=3001
SSL_CRT_FILE=file.cer
SSL_KEY_FILE=file.key

我的烧瓶服务器遇到了类似的问题,但最终让它按如下方式工作

def ssl_setup():
  cer_file = file.cer
  key_file = file.key

  context = ssl.SSLContext(ssl.PROTOCOL_TLSv1_2)
  context.load_cert_chain(cer_file, key_file)

if __name__ == "__main__":
  app.run(host='0.0.0.0', port=5001, ssl_context=ssl_setup())

使用 chrome 开发工具,它显示 Flask 使用的是 AES256,而 React 使用的是 AES128。也许这就是问题所在?

在此处输入图像描述

在此处输入图像描述

强制 256 位仍然不起作用,它一直说我的证书无效,即使它在 Python 中工作得很好。为了强迫它,我用export NODE_OPTIONS=--tls-cipher-list=''ECDHE-RSA-AES128-GCM-SHA256:!RC4''

标签: node.jsreactjssslnetworking

解决方案


推荐阅读