小编Kyr*_*ony的帖子

如何在 Nuxt 3 中捕获路线并重定向到另一个页面

我有一个使用 Nuxt 3 重建的网站。反向链接存在于许多平台上,我需要旧链接指向新页面。示例:旧(website.com/contact.html) 新(website.com/contact)

我尝试使用中间件,但部署后出现此错误:502 解码 lambda 响应时出错

在我的中间件/重定向文件夹中,我有这个:

const redirects = [{
    'from' : '/contact.html',
    'to' : '/contact'
}]

export default function (req, res, next) {
    const redirect = redirects.find((r)=> r.from === req.url)

    if (redirect) {
        res.writeHead(301, { Location: redirect.to })
        res.end()
    } else {
        next()
    }
}
Run Code Online (Sandbox Code Playgroud)

它在本地工作,但部署到 netlify 后就不行了!

我将其添加到我的 nuxtconfig 文件中:

    serverMiddleware: [
        '~/middleware/redirect'
    ]
Run Code Online (Sandbox Code Playgroud)

我认为这个中间件将充当网络来捕获对旧 contacts.html 页面的任何请求并将其重定向到新的联系页面。但相反,它发送了 lambda 错误,我环顾四周,没有找到可靠的修复方法。我愿意接受任何解决方案,包括不同的重定向方式!谢谢你!

middleware nuxt.js vuejs3

13
推荐指数
1
解决办法
1万
查看次数

标签 统计

middleware ×1

nuxt.js ×1

vuejs3 ×1