本文介绍了在netlify中捕获创建-反应-应用程序的所有重定向的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个使用create-react-app
生成并托管在netlify
中的。
/* /index.html 200
但重定向到index.html
不起作用,因为没有使用该URL呈现任何视图。我还尝试重定向到/
Like[[redirects]]
from = "/*"
to = "/"
但这也不起作用。
如何为create-react-app
执行全面重定向?
推荐答案
要捕获所有重定向,请使用_redirects
文件中的/* /index.html 200
。
根据netlify文档,_redirects
文件应该位于您的根构建目录中。
默认情况下,Create-Reaction-app在名为build
的文件夹下创建所有构建文件
package.json
中的build scripts
,将_redirects
添加到Build文件夹中。示例。
"scripts": {
....
"build": "react-scripts build && echo '/* /index.html 200' | cat >build/_redirects ",
...
}
如果您有多个重定向以简化操作,则可以在CRA的根(/
)文件夹中创建一个包含所有重定向的_redirects
文件
则package.json
将变为
"scripts": {
....
"build": "react-scripts build && cp _redirects build/_redirects",
...
}
确保netlify中的构建命令为yarn run build
或npm run build
package.json
中进行更改后,只需重新生成代码即可。已更新:更好的方式
在CRA(Create Reaction App)中,构建脚本将公共目录中的每个文件复制到Build文件夹中,因此只需将_reDirects与规则放在公共目录中,而不更改任何内容,您就可以开始工作了。
这篇关于在netlify中捕获创建-反应-应用程序的所有重定向的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!