ReactJS - 多页应用程序在为生产构建后无法运行

ReactJS - Multi-page app not working after being built for production

我想在 GoDaddy 上托管一个多页面应用程序。在 运行 npm build 之后,我按照他们的说明将文件上传到 GoDaddy,我可以毫无问题地查看我的主页。当我尝试导航到另一个页面(例如关于页面)时,出现 404 错误。

我一直在寻找,但我尝试的解决方案没有奏效。我尝试将 "homepage": "http://www.kashy.com.au/", 添加到我的 package.json。我也试过玩路线。 (为路径中的站点添加 URL)。

我是 React 的新手,所以我不太了解路由的工作原理。有人能指出我解决这个问题的正确方向吗?

您需要将所有网址重定向到您在 Godaddy 上的站点以指向 homepage/index,因为路由由您的 client/react 应用程序处理。

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

样本

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

步骤

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