【发布时间】:2020-12-06 12:17:27
【问题描述】:
我在 Vercel 上托管了一个 NextJS 项目 我添加了 server.js 文件以使用自定义快速服务器,该服务器将 301 重定向一些 url 当我在本地运行它时,重定向工作,但是当我将代码推送到 Vercel 上的生产时,重定向不起作用
这是 server.js 文件:
const express = require('express')
const next = require('next')
const bodyParser = require('body-parser')
const dev = process.env.NODE_ENV !== 'production'
const app = next({ dev })
const handle = app.getRequestHandler()
app.prepare().then(() => {
const server = express()
server.use(bodyParser.json())
//Redirect to main page
server.get(
[
'/product-tag/885-m2/?orderby=menu_order',
'/product-tag/885-m2/?orderby=price',
'/cutter/mwhzt-zvvit/mwhzt-zvvit-2.html?___store=default&___from_store=english',
'/sales/guest/form/'
]
, (req, res) => {
res.redirect(301, '/')
})
server.get('*', (req, res) => {
return handle(req, res)
})
server.listen(3000, (err) => {
if (err) throw err
console.log('> Read on http://localhost:3000')
})
})
这是我的 package.json 脚本部分:
"scripts": {
"dev": "node --inspect server.js",
"build": "next build",
"start": "NODE_ENV=production node server.js",
},
【问题讨论】:
标签: node.js reactjs express next.js vercel