我有一个在 NodeJS 环境中使用 Phusion Passenger 的主机,我想在其上运行我的 Strapi 应用程序。
现在我做了以下事情:
我不知道如何配置我的 app.js 文件以使其启动 Strapi
我做了类似的事情,但我很确定这是错误的:
const http = require("http");
const hostname = "127.0.0.1";
const port = "passenger";
const strapi = require("@strapi/strapi");
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader("Content-Type", "text/plain");
res.end("Hello World! NodeJS");
});
server.listen(port, hostname, () => {
console.log(`Server running at https://somary.fr/`);
strapi().start();
});
如何配置我的 app.js 文件以最终访问我的 Strapi 应用程序?
我正在 Phusion Passenger 上部署 [电子邮件受保护] 应用程序。
这是我更新的 app.js 文件:
const strapi = require("@strapi/strapi");
strapi({ dir: "./build" }).start();
要创建构建文件夹,您需要运行:
npm run build
希望我有帮助。
在我的例子中,strapi 明确寻找 server.js(不是 app.js | index.js)文件,该文件不存在于我的托管主机(plesk、phusion Passenger,...)上。 pm2 和 mysql 也没有安装,因为访问权限仅限于全局安装。所以我必须想办法。
这就是我所做的:
npm install pm2 mysql
const strapi = require('@strapi/strapi');
strapi(/* {...} */).start();
npm run build
npm run production
ps:确保在 .env 文件中设置了正确的端口和 url