tapao-nonsen
FREE
3 months ago
I have trying to deploy Next.js website build with react it's was deploy success but not access able 502
"failed to forward request to upstream: connection refused"
Here my entry code
const next = require('next');
const express = require('express');
const cors = require('cors');
const dotenv = require('dotenv');
const path = require('path');
dotenv.config();
const dev = false;
const app = next({ dev });
const handle = app.getRequestHandler();
const server = express();
server.use(cors());
server.get('/healthz', (req, res) => {
res.status(200).json({
status: 'ok',
uptime: process.uptime(),
timestamp: Date.now(),
env: dev ? 'development' : 'production',
});
});
const jsonParser = express.json();
server.use((req, res, next) => {
if (req.path.startsWith('/api/stripe')) {
next();
} else {
jsonParser(req, res, next);
}
});
// Load API routes
const authRoutes = require(path.join(__dirname, './routes/auth'));
const stripeRoutes = require(path.join(__dirname, './routes/stripe'));
const userRoutes = require(path.join(__dirname, './routes/users'));
const linkvertiseRoutes = require(path.join(__dirname, './routes/linkvertise'));
const serverRoutes = require(path.join(__dirname, './routes/servers'));
// Attach API routes
server.use('/api/auth', authRoutes);
server.use('/api/users', userRoutes);
server.use('/api/linkvertise', linkvertiseRoutes);
server.use('/api/servers', serverRoutes);
server.use('/api/stripe', stripeRoutes);
app.prepare()
.then(() => {
server.all('*', (req, res) => handle(req, res));
const PORT = process.env.PORT || 3000;
server.listen(PORT, () => {
console.log(`✓ Next.js + API running on http://localhost:${PORT}`);
});
})
.catch((err) => {
console.error(':x: Failed to prepare Next.js app:', err);
process.exit(1);
});