我可以在常规主机上部署我的 ReactJS 应用程序吗?
Posted
技术标签:
【中文标题】我可以在常规主机上部署我的 ReactJS 应用程序吗?【英文标题】:Can I deploy my ReactJS app on a regular host? 【发布时间】:2017-11-19 12:59:18 【问题描述】:我是 React 新手,我看过很多指南,人们教你如何在数字海洋、heroku、GitHub Pages、aws 等服务上部署你的 React 应用程序。 但我想知道我是否可以部署我的 React 应用程序(create-react-app),它只包含主机服务(如 000webhost 或 Ipage)中的前端?因为一个人要我设计一个网站,他说他在lpage已经有了域名和主机服务。
提前致谢
【问题讨论】:
【参考方案1】:我使用 webpack 来捆绑我的 react 应用程序。所以最后反应应用程序将是:
一个包(如果您使用动态包加载,很少会更多 - 可能不是),这只是一个 javascript 文件 在正文末尾包含此文件的 index.html 和您的 .css,原则上您可以将其设置在一个文件中(或包含多个文件的单独文件夹)并包含在 index.html 的顶部关于 .css,有几种更好的包含方法,但您可以从上面提到的简单设置开始。
所以你只需将这 3 个东西放在你的服务器上,你的应用程序就可以在 index.html 中使用。
附:不知道 Ipage 是什么,也没有使用 create-react-app。
【讨论】:
但是您可以在常规主机上部署您的应用程序,然后将文件上传到根目录吗?我的意思是,不是虚拟服务器的服务,比如 heroku、数字海洋和其他类似的服务。 嗯,你的主机必须是公开可见的,并且有一个服务器从某个位置提供文件。这个位置是根。您将上述内容放在根目录中,然后可以通过 myhost.com/index.html 作为反应应用程序访问它们。或者您可以将文件放在某个文件夹中,并指示服务器该文件夹是应用程序的根目录,而 myhost.com/myapp1/ 查看该文件夹的根目录。然后 index.html 将可以在 myhost.com/myapp1/index.html 访问。 它应该有一个服务器来提供文件是什么意思?你能推荐我一些你做过这个的主机吗? 我使用 Heroku 作为普通主机。您可以将 index.html、bundle.js 和 css 部署到 heroku,它应该可以工作(可能有些问题,但不是预期的)。在 heroku 的部署选项卡上,您只需从 github 拉出这 3 样东西。 谢谢!我刚刚在 000webhost 中测试了一个简单的应用程序,它就像一个魅力!就像一个建议,你应该试试 create-react-app。是一个你可以在 npm 中找到的包,它创建了一个可供使用的 ReactJS 应用程序。对于更多的访问者,我使用了create-react-app
,然后,我只是执行了npm run build
,并将我的所有文件上传到了000webhost(根文件夹)中的public_html
文件夹,它就可以工作了。注意您上传到static
文件夹的文件是否放置好,否则只有您看到的是白屏。【参考方案2】:
从项目所在的命令行文件夹运行“npm run build
”。从创建的“构建”文件夹中复制文件并将它们上传到主机的根文件夹或等效文件夹中。不到一分钟。
【讨论】:
以上是关于我可以在常规主机上部署我的 ReactJS 应用程序吗?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 json-server 部署 reactJS 应用程序