loading...
آموزش استقرار Next.js روی هاست اشتراکی
پرینت
  • 0

استقرار Next.js روی هاست Nodejs

برای استقرار یک برنامه با فریمورک Next.js روی هاست Node.js دو راه حل وجود دارد.
راه حل ساده استفاده از حالت SSG است که خروجی پروژه به صورت فایلهای استاتیک تولید می‌شود و میتوانید فایلهای حاصل را داخل هاست آپلود نمایید.

برای اطلاعات بیشتر در مورد این روش می‌توانید مستندات رسمی این فریمورک را مطالعه نمایید:

https://nextjs.org/docs/pages/building-your-application/deploying/static-exports

 

راه حل دوم ایجاد یک Back-End برای پروژه است.

برای این کار مراحل زیر انجام خواهد شد:
۱. نوشتن یک Back-End برای پروژه

۲. تنظیم پروژه در cPanel

در ادامه این مراحل را انجام خواهیم داد.

۱. نوشتن یک Back-End برای پروژه

در پوشه اصلی پروژه یک پوشه به نام server ایجاد کنید.

سپس یک فایل با نام index.js ساخته و محتوای زیر را داخل آن قرار دهید:

 

const { createServer } = require('http')
const { parse } = require('url')
const next = require('next')

const dev = process.env.NODE_ENV !== 'production'
const hostname = 'localhost'
const port = process.env.PORT || 3000

const app = next({ dev, hostname, port })
const handle = app.getRequestHandler()

app.prepare().then(() => {
  createServer(async (req, res) => {
    try {
      const parsedUrl = parse(req.url, true)
      const { pathname, query } = parsedUrl
      await handle(req, res, parsedUrl)
    } catch (err) {
      console.error('Error occurred handling', req.url, err)
      res.statusCode = 500
      res.end('internal server error')
    }
  }).listen(port, (err) => {
    if (err) throw err
    console.log(`> Ready on http://${hostname}:${port}`)
  })
})

 

۲. تنظیم پروژه در cPanel

به این منظور می‌توانید تنظیمات را مطابق تصویر زیر انجام دهید:

پس از ساختن اپلیکیشن، برنامه شما روی آدرس مشخص شده در دسترس خواهد بود.

توجه نمایید که نسخه nodejs را مطابق با نسخه ای که اپلیکیشن با آن توسعه یافته تنظیم نمایید.

آیا این پاسخ به شما کمک کرد؟

مقالات مربوطه

Powered by WHMCompleteSolution


support agent
How can i help you?