为什么托管在 ZEIT Now 上的 Create React App 不显示 404 响应?
Why does Create React App hosted on ZEIT Now not show a 404 response?
如果我在 Google App Engine 上为我的站点尝试 mywebsite.com/NON-EXISTENT-PATH
,我会收到 404 响应。
然而,如果我尝试 localhost:3000/NON-EXISTENT-PATH
,将 create-react-app 的本地开发服务器用于另一个应用程序,它只会给我 localhost:3000
的响应,而不是 404。这也适用于在 ZEIT Now 上托管该应用程序。为什么是这样?
自动检测 Create React App 并添加通配符路由,以便任何与静态文件不匹配的路径都将提供服务 /index.html
。
https://zeit.co/docs/v2/build-step#optimized-frameworks
对于不为每个页面创建 HTML 文件而是创建单个 index.html 文件并使用 JavaScript 在前端进行路由的框架来说,这是必需的。
这种模式通常称为 SPA。
如果我在 Google App Engine 上为我的站点尝试 mywebsite.com/NON-EXISTENT-PATH
,我会收到 404 响应。
然而,如果我尝试 localhost:3000/NON-EXISTENT-PATH
,将 create-react-app 的本地开发服务器用于另一个应用程序,它只会给我 localhost:3000
的响应,而不是 404。这也适用于在 ZEIT Now 上托管该应用程序。为什么是这样?
自动检测 Create React App 并添加通配符路由,以便任何与静态文件不匹配的路径都将提供服务 /index.html
。
https://zeit.co/docs/v2/build-step#optimized-frameworks
对于不为每个页面创建 HTML 文件而是创建单个 index.html 文件并使用 JavaScript 在前端进行路由的框架来说,这是必需的。
这种模式通常称为 SPA。