首页 > 解决方案 > Next.js 应用程序部署为具有一些托管服务提供商限制的 ssr 应用程序

问题描述

我有一个启用托管节点应用程序的共享托管服务提供商。它有一个限制,必须调用应用程序入口文件app.js,并且它必须在文件夹中/usr/home/username/domains/domain/public_nodeappnode app.js该应用程序在首次从网络访问域时自动启动(可能通过类似的方式)。

是否可以next.js在这样的提供商上托管应用程序作为服务器端呈现的应用程序(而不是由 生成的静态 HTML 站点next export)?

运行后next build生成应用程序的生产版本,生产版本没有app.js文件,应该由next start. 我不确定是否以及如何调整它(可能是一些文件移动或重命名)以匹配上述限制。

标签: next.js

解决方案


您可以将放置在所需位置的文件,然后调用从cliapp.js触发时将调用的函数。next start

这意味着这个文件应该需要https://github.com/zeit/next.js/blob/canary/packages/next/cli/next-start.ts和调用nextStart

// app.js
const startServer = require('next/dist/cli/next-start');

startServer();

推荐阅读