Cpanel 中的 Node.js (Express) Restful API 应用程序无法正常工作(API)?收到 503 服务不可用

问题描述 投票:0回答:2

在这种情况下,我提到了 auth API,其他 API 也无法获得相同的结果

在本地主机中它正在工作(

server.use('/auth', routeAuth);

在服务器中,一旦我在 Cpanel 中创建了 Node 应用程序(

server.use('/server/auth', routeAuth);
),它就不起作用了

在 server.js 下面的服务器代码块中

const express = require('express');
const server = express();
const cors = require('cors');

const routeAuth = require('./auth/auth');
const routeRegister = require('./auth/register');

const routeArticle = require('./api/article/article');

const PORT = process.env.PORT || 4300;

server.use(express.json());
server.use(express.urlencoded({ extended: false}));
server.use(cors());

server.use('/server/auth', routeAuth);
server.use('/server/', routeRegister);

server.use('/server/api', routeArticle);

server.listen(PORT, () => console.log(`Server started on port: ${PORT}`));

localhost Postman 测试工作 enter image description here

部署到服务器后结果不起作用 enter image description here

node.js api express cpanel
2个回答
0
投票

发生这种情况是因为我有一个数据库配置错误,使用而不是使用

tempCont.release();
解决了它,我省略了它并仅使用响应,通过这样做,我解决了错误 -
TypeError: Cannot read property 'release' of undefined
,这导致了 503 服务不可用。然后在解决数据库配置问题后,我再次添加了
tempCont.release();
,现在它工作正常了。

router.post('/login', (req, res) => {
connection.getConnection((error, tempCont) => {
    if (error) {
        // tempCont.release();
        res.json({ message: 'Can not connect database' });
    }
    else { ....

0
投票

尝试使用文字路径而不是本地主机,现在它失败了,已经有一个开放的票证,示例而不是使用http://localhost:3000,http://127.0.01:3000/

© www.soinside.com 2019 - 2024. All rights reserved.