【问题标题】:After Deploying on Azure NextJs App wrapped in Express, app loads forever在包裹在 Express 中的 Azure NextJs 应用程序上部署后,应用程序永远加载
【发布时间】:2019-06-27 13:40:54
【问题描述】:

您好,我正在尝试使用带有 server.js 的 devOps 项目部署 nextjs 应用程序,如下所示:

const express = require('express')
const next = require('next')
    
const dev = process.env.NODE_ENV !== 'production'
const app = next({ dev })
const handle = app.getRequestHandler()
    
app.prepare()
.then(() => {
  var port = process.env.port || 3001
  const server = express()
    
  server.get('*', (req, res) => {
    return handle(req, res)
  })
    
  server.listen(port, (err) => {
    if (err) throw err
    console.log('> Ready on http://localhost:433')
  })
})
.catch((ex) => {
  console.error(ex.stack)
  process.exit(1)
})

对于 devOPs 项目,我设置了 github、vsts,然后它转到了 azure。

我使用了 nodejs 的默认设置,仅在 VSTS 管道中添加了 npm 脚本“npm run build”。

我在 buld 的代理工作是这样的:

  • -用户节点版本
  • -npm 安装应用程序依赖项
  • -Npm 自定义(由我添加,运行构建)
  • -存档文件
  • -公共神器掉落。

在发布中:

  • Azure 部署:创建 Azure 应用
  • 部署 Azure 应用服务

问题是构建成功与发布相同,但是当我尝试访问该网站时,它会永远加载。我做了研究,但一无所获。

我已经尝试让它工作 3 天了...请帮助

【问题讨论】:

  • 你有没有让这个工作?我已经尝试了完全相同的步骤,也使用 Next.js 应用程序,并在尝试访问该站点时得到 404。根据 Azure,服务器正在运行。

标签: node.js azure azure-devops next.js


【解决方案1】:

昨天我使用 Azure Devops 构建和发布管道成功地将 NextJs App 部署到 Azure App 服务。

以下是我遇到的三个问题。我还分享了每个问题的解决方案截图。

  1. Azure App service Node 版本应该和你的 nextjs 兼容。

    https://i.imgur.com/UPDc9GE.png

  2. 根目录下缺少 web.config 文件

    https://i.imgur.com/EZRTT4P.png

  3. server.js 中的端口号不正确,package.json 中的脚本标签不正确

    https://i.imgur.com/PJadc7b.png

我的构建管道看起来像你。 https://i.imgur.com/0Y8m2wH.png

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-05-04
    • 1970-01-01
    • 2022-10-23
    • 1970-01-01
    • 2020-05-17
    • 1970-01-01
    • 1970-01-01
    • 2020-05-25
    相关资源
    最近更新 更多