netlify 未接收 nextjs 应用程序的重定向尝试

问题描述 投票:0回答:1

我最近将一个 React 网站转换为使用 next.js 进行 seo,除了无法正确渲染 index.js 之外,它运行得非常好。然后,我将索引上的所有代码转换为存在于 url.com/home 中,并决定从 url.com 重定向到 url.com/home。唯一的问题是,一旦部署到 netlify,它似乎就不起作用了。

我尝试通过index.js、next.config.json、_redirects 文件和netlify.toml 文件添加从url.com 到url.com/home 的重定向。一切都采用正确的语法,并且当我在本地运行代码时一切正常。但是当我将代码推送到 netlify 并部署它时,我每次仍然遇到完全相同的问题,其中 url.com 仅显示一个空白页面并且不会重定向到任何地方。

有人遇到过这个问题吗?无论是空白页面问题还是 netlify 未实现重定向的问题,解决这两个问题中的任何一个都会对我有很大帮助,我真的很感激。

javascript reactjs next.js hosting web-hosting
1个回答
0
投票

听起来这里可能存在一些不同的问题。让我们尝试一步步解决问题:

  1. 空白页问题: 如果部署的站点在

    url.com
    显示空白页面,则可能是
    index.js
    文件未正确提供,或者初始设置可能存在问题。以下是一些需要检查的事项:

    • 确保

      index.js
      文件正确命名并放置在 Next.js 项目的
      pages
      目录中。它应该命名为
      index.js
      index.tsx
      ,具体取决于您使用的是 JavaScript 还是 TypeScript。

    • 仔细检查

      index.js
      文件的内容,确保其有效且不包含任何错误。在本地运行 Next.js 项目并检查
      index.js
      页面是否按预期呈现。

    • 如果您最近将项目转换为 Next.js,则可能存在导致问题的缓存文件。尝试在 Netlify 上运行完整构建并重新部署,看看是否可以解决空白页问题。

  2. 重定向问题: 如果您想将

    url.com
    重定向到
    url.com/home
    ,您可以尝试使用
    _redirects
    文件。以下是在
    _redirects
    文件中设置重定向的方法:

    在 Next.js 项目根目录中,创建一个名为

    _redirects
    的文件(不带任何文件扩展名)。在
    _redirects
    文件中,添加以下行:

    /     /home     302
    

    上面的行告诉 Netlify 执行从根 URL (

    /
    ) 到
    /home
    的 302 重定向。

    确保此

    _redirects
    文件存在于构建输出中。您可以通过运行 Next.js 项目 (
    next build
    ) 的本地构建并验证是否在
    _redirects
    目录中生成
    /.next
    文件来检查这一点。

  3. Netlify 重定向配置: 如果上述解决方案不起作用,则可能是 Netlify 未获取重定向规则的问题。为了确保重定向正常工作,您可以在

    netlify.toml
    文件中配置重定向。在项目根目录中创建或修改
    netlify.toml
    文件并添加以下内容:

    [[redirects]]
      from = "/*"
      to = "/home/:splat"
      status = 302
    

    此配置会将所有路径重定向到

    /home
    ,保留任何其他路径段。

  4. 在 Netlify 上重新部署: 对代码、重定向或配置进行任何更改后,请确保提交这些更改并将其推送到版本控制系统(例如 Git)。然后在 Netlify 上触发新部署以应用更新。

  5. 检查 Netlify 构建日志: Netlify 提供详细的构建日志,可以帮助您识别构建过程中的任何错误。检查 Netlify 仪表板上的构建日志,看看部署过程中是否报告了任何问题。

如果您已尝试上述所有步骤但仍然遇到问题,则查看 Netlify 在部署过程中提供的任何错误消息或日志会很有帮助。此外,请考虑联系 Netlify 支持人员以获得进一步帮助,因为他们可以提供与其平台相关的具体帮助。

© www.soinside.com 2019 - 2024. All rights reserved.