在Netlify上部署React App之后,HTTP GET响应304状态错误

时间:2019-03-30 09:55:01

标签: javascript reactjs npm netlify

  • 我在netlify中部署了React应用程序
  • 所以我使用npm run build命令来构建本地脚本,并在netlify中手动部署了用于生产模式的应用程序
  • 构建脚本是在本地计算机上创建的,并已在netlify站点中上传
  • 它将消息显示为成功部署
  • 在单击URL链接时,以前将GET请求的状态显示为404构建脚本
  • 将重定向文件包含在构建文件夹中后,其状态更改为GET请求,生成脚本的请求为304,并显示错误为
      

    语法错误:未捕获的错误:意外的令牌<

  • 为了进行调试,我注释了文件并运行代码以找出错误
  • 但是,找不到根本错误
  • 你们可以帮我弄错您的建议吗
  • netlify URL链接:https://lucid-shaw-bb2b3f.netlify.com
  • 该应用程序代码可在github中找到,其链接为:https://github.com/aarivalagan/react-one
  • 下面随附的应用程序屏幕截图
  • 在下面提供代码段:

_redirects

/*     /index.html   200!

packagae.json

"scripts" : {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject"
  }

enter image description here

1 个答案:

答案 0 :(得分:1)

如果要将_redirects放入create react app,则应将其放入public文件夹中。对于诸如Netlify之类的连续构建解决方案,构建文件夹不应位于您的存储库中。

您在此处建议的_redirects通常用于将单页应用程序与诸如react router之类的路由器一起使用,并希望在index.html不存在的情况下始终使用路径。您不希望它解析资产价值路径。

  

无论浏览器请求使用哪个URL,此重定向规则都将提供index.html而不是提供404。

_redirects

/*    /index.html   200

正在发生的事情是,即使没有有效路径,您也正在强制index.html页面上载资产。

  • 修复original issue
  • _redirects移至public文件夹
  • 从重定向的末尾删除!,因此,如果找到路径,它将正确地为它提供服务,而并不总是将其强制为index.html