我想在 PLESK-ONYX 服务器上部署一个小型 node.js 应用程序 - Phusion_Passenger / 5.3.5 也在其上运行!
会发生以下情况:
这在这里有效:
var express = require ('express');
var bodyParser = require ('body-parser');
这不起作用:
import express from 'express';
import bodyParser from 'body-parser';
然后出现以下错误:
Phusion Passenger 应用程序服务器尝试通过称为“包装器”的 Passenger 内部帮助工具启动 Web 应用程序。但是,Passenger 无法执行该辅助工具,因为它遇到了内部错误。
The stdout/stderr output of the subprocess so far is:
/var/www/vhosts/hosting13.netcup.net/mem3-s3.hxxx-3.de/index.js:2
import express from 'express';
^^^^^^^
怎么解决呢?
问题出在哪里?
提前谢谢你的帮助!
此致
马库斯
您好,在此期间我有新的发现...
我的问题似乎是 - 目前 PLESK 中最高可用的 node.js 版本是 12.4!
在 PLESK - 我必须使用 server.js-File 启动 node.js-App - 像这样:
const app = require('./index.mjs');
const http = require('http');
http.createServer(app).listen(process.env.PORT);
我的 node.js-Version 是 V.12.4,所以我必须像这样使用 esm:
require = require("esm")(module/*, options*/)
module.exports = require("./index.js")
我怎样才能以正确的方式组合这两个文件?
非常感谢你的帮助!
这是“package.json”的内容:
{
"name": "mb-test-1",
"version": "1.0.0",
"description": "",
"main": "index.mjs",
"type": "module",
"scripts": {
"start": "nodemon -r esm index.mjs"
},
"author": "",
"license": "ISC",
"dependencies": {
"body-parser": "^1.19.0",
"cors": "^2.8.5",
"dotenv":"^8.2.0",
"esm":"^3.2.25",
"express":"^4.17.1",
"mongoose":"^5.9.29",
"nodemon":"^2.0.7"
}
}
但不幸的是,我还没有找到 - 在 PLESK 中 node.js 的启动命令可以在哪里编辑!
此致
马库斯