首页 > 解决方案 > 如何使用Passenger 部署Next.js 应用程序?

问题描述

我对开发完全陌生,我正在尝试部署我的第一个应用程序(假设名称是testing)。
我想使用Passenger部署我的Next.js React应用程序(Dreamhost包含并需要它,所以我没有安装它,我passenger在服务器终端上没有命令)但我不知道如何做到这一点.

据我所知,Passenger 正在寻找app.js启动应用程序,因此,在我的服务器上,在我的域文件夹内,应该有一个app.js( testing.com/app.js)。
但是 Next.js 没有明确的app.js,我只有一个_app.js在我的pages文件夹中进行一些小的更改,所以我不知道如何连接它们。

我还想知道,一旦我配置了 app.js,我需要运行node app.js吗?
如果我更改 的代码,我的网站似乎会做出相应的更改testing.com/app.js,就像下面的代码:

var http = require("http");

http.createServer(function(request, response) {
  response.writeHead(200, {"Content-Type": "text/plain"});
  response.write("Hello World");
  response.end();
}).listen(80);

如果我node app.js列出到端口 3000 运行,它适用于httphttps仍会显示类似We're sorry, but something went wrong..
如果我不运行node app.js或者我设置监听端口 80,我能得到的只是We're sorry, but something went wrong..

任何帮助,将不胜感激。

标签: javascriptnode.jsnext.jspassenger

解决方案


我强烈建议阅读如何使用乘客部署 node.js 应用程序

至于端口问题...

由于您没有显示任何错误日志,我假设问题是您没有 root 访问权限。低于 1024 的任何端口都需要 root 访问权限才能使用。

只需运行sudo node app.js,您应该能够监听 1024 以下的端口。


推荐阅读