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 文件,点击左上角的菜单
- 右键单击文件并编辑然后粘贴上面的内容
- 保存
我想在 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 文件,点击左上角的菜单
- 右键单击文件并编辑然后粘贴上面的内容
- 保存