没有服务器的React app

问题描述 投票:2回答:3

如何在没有服务器的情况下打包和托管反应应用程序。该应用程序纯粹是前端。尝试构建应用程序npm run build,但创建了一个需要托管服务器的构建。

reactjs react-router react-redux
3个回答
0
投票

您需要一个http服务器来本地托管该站点。但是如果你想在云上托管它,还有其他选择。

一旦捆绑了它。您只需将资产复制到Amazon S3上的存储桶即可。它允许您将它们作为静态网站提供。您可以在此处参考更多信息。

https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html

同样,其他云提供商也有自己的等价物。


0
投票

嗯不,它不需要服务器来托管它。正如你所说的那样只是前端。但是,如果您想要通过脚本导航导航其他,则需要一台服务器。简单地构建项目并将索引文件作为静态资产提供就足以在共享主机上运行代码。一旦索引文件下载完毕,它将执行导入的javascript(在这种情况下做出反应)。但是,如果你试着去说,website.com / alt它不会起作用,因为在反应中渲染特定的路线需要渲染和返回javascript。你需要服务器的东西。

react bundle是自动执行的,至少使用create-react-app。你不应该有任何问题。


0
投票

根据定义,您无法在没有服务器的情况下通过http(s):协议加载任何内容。你可能意味着像file:这样的网址加载,这是本地文件系统路径。

建立捆绑包以通过绝对URL加载资产。这是因为您的网页可能在网址中有一些深层路径。因此,您需要配置服务器,以便您的构建文件夹将作为站点的根目录。

这意味着如果您尝试从工作站上的磁盘运行它,您需要将构建目录的内容放入磁盘根目录才能工作(例如,如果不是Windows则为C:\,如果不在Windows上则为/

© www.soinside.com 2019 - 2024. All rights reserved.