我有一个 React 应用,我正尝试将其部署到站点的子目录 - 例如 https://example.com/myapp。服务器使用 Apache。我已经配置了 package.json、BrowserRouter 和 .htaccess,如下所示...
我有一个 React 应用,正尝试将其部署到站点的子目录 - 例如 https://example.com/myapp 。服务器使用 Apache。我已配置 package.json、BrowserRouter 和 .htaccess,如下所示:
软件包.json:
"homepage": "https://example.com/myapp/"
浏览器路由器:
root.render(
<React.StrictMode>
<BrowserRouter basename="/myapp">
<Routes>
<Route path="/*" element={<App />} />
</Routes>
</BrowserRouter>
</React.StrictMode>
);
https://example.com/myapp/.htaccess :
FallbackResource ./index.html
总体而言,这一切都按应有的方式运行,但有一个主要例外。
如果我尝试 https://example.com/myapp/users - 效果很好。
但是,如果我尝试 https://example.com/myapp/user/{userId} ,我会收到错误。
尽管我已指定了路线,但情况仍然如此:
<Route path="user/:userId" element={<UserProfile />} />
当我在 localhost:3000 以开发模式进行测试时,它确实运行良好。
我 认为 问题在于,当用户请求 https://example.com/myapp/user https://example.com/myapp https://example.com/myapp 。
但是,当用户请求 https://example.com/myapp/user/7 ,它正在寻找不存在的子子子文件夹,找不到 .htaccess 文件,因此引发错误。
长话短说,有办法处理这种情况吗?
React、BrowserRouter、Apache 和子目录
下载声明:
本站所有软件和资料均为软件作者提供或网友推荐发布而来,仅供学习和研究使用,不得用于任何商业用途。如本站不慎侵犯你的版权请联系我,我将及时处理,并撤下相关内容!