ReactJS-多页面应用程序在构建用于生产后无法正常工作

时间:2019-01-28 23:37:24

标签: reactjs react-router hosting

我有一个试图在GoDaddy上托管的多页应用程序。运行npm build后,我按照文件说明将文件上传到GoDaddy,并且可以轻松查看我的主页。当我尝试导航到诸如“关于”页面之类的另一页面时,出现404错误。

我一直在搜索,尝试的解决方案无效。我尝试将"homepage": "http://www.kashy.com.au/",添加到我的package.json中。我也尝试过路线。 (在路径中添加网站的URL。)

我是React的新手,所以我不太了解这些路线的工作方式。有人可以为我指出解决这个问题的正确方向吗?

1 个答案:

答案 0 :(得分:2)

由于路由是由客户端/反应应用处理的,因此您需要将所有URL重定向到Godaddy上的您的网站,以指向首页/索引。

创建一个.htaccess文件,以将所有请求重定向到index.html。

样品

RewriteBase /
RewriteRule ^index\.html$ - [L]
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.html [L]

步骤

  • 从cpanel文件管理器中,转到网站的根文件夹(即public_html)。
  • 通过单击左上方菜单创建(dot)htaccess文件
  • 右键单击文件并进行编辑,然后粘贴上面的内容
  • 保存