我的 next.js 应用程序在 cPanel 上部署后变为空白

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

我在 cPanel 及其空白上部署了 Next.js 应用程序。在本地运行良好。以下是我遵循的步骤:

1.首先,我使用以下代码在根目录中创建了一个自定义 server.js :

const { createServer } = require('http')
const { parse } = require('url')
const next = require('next')

const dev = process.env.NODE_ENV !== 'production'
const hostname = 'localhost'
const port = process.env.PORT || 3000

const app = next({ dev, hostname, port })
const handle = app.getRequestHandler()

app.prepare().then(() => {
  createServer(async (req, res) => {
    try {
      const parsedUrl = parse(req.url, true)
      const { pathname, query } = parsedUrl

      if (pathname === '/a') {
        await app.render(req, res, '/a', query)
      } else if (pathname === '/b') {
        await app.render(req, res, '/b', query)
      } else {
        await handle(req, res, parsedUrl)
      }
    } catch (err) {
      console.error('Error occurred handling', req.url, err)
      res.statusCode = 500
      res.end('internal server error')
    }
  }).listen(port, (err) => {
    if (err) throw err
    console.log(`> Ready on http://${hostname}:${port}`)
  })
})
  1. 然后我编辑了 package.json 文件以在启动脚本上将环境设置为生产环境:
  "scripts": {
    "dev": "next dev",
    "build": "next build",
    "start": "NODE_ENV=production node server.js",
    "lint": "next lint"
  },
  1. npm run build 并压缩以下文件:

  1. 在文件管理器根目录中全部导入并解压:

5.使用以下信息在安装 Node.js 应用程序上创建我的应用程序:

  1. 停止应用程序 - 运行 NPM install,然后重新启动应用程序

完成所有这些步骤后,我的应用程序是空白的,我不知道我做错了什么。

这里有一个 Github 链接,您可以在其中查看所有应用程序代码。从昨天开始我就陷入了困境,感谢您为我解决这个问题提供的任何帮助。我知道问题是由我的应用程序引起的,但我无法弄清楚。

希望我提供的所有信息可以帮助您理解。

reactjs next.js deployment cpanel
1个回答
0
投票

我在这里也遇到了同样的问题。有人已经解决这个问题了吗?

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