راکت

بالا آوردن سایت next js بر روی هاست

3 پاسخ

سلام دوستان من یک پروژه next js دارم که میخوام روی هاست بالا بیارم. چگونه می توانم این کار را انجام دهم؟
و این که cpanel من افزونه node js را ندارد. ایا راهی هست که بدون node js بتونم انجامش بدم ؟

ثبت پرسش جدید

پاسخ‌ها

3
Banana Life
Banana Life
@shift.delete

سلام
دوست عزیز شما میتونید از vps یا سایت مثل vercel و netlify برای پروژه next js تان استفاده کنید

حسین افتخارراد
حسین افتخارراد
@hosseinradvictor

تخصص: نال کد

ابتدا custom server nextjs رو سرچ کنید گزینه اول داکیومنت خود نکس هست که ابتدا داخل پوشه روت پروژه یک قابل server.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 = 3000
// when using middleware `hostname` and `port` must be provided below
const app = next({ dev, hostname, port })
const handle = app.getRequestHandler()

app.prepare().then(() => {
  createServer(async (req, res) => {
    try {
      // Be sure to pass `true` as the second argument to `url.parse`.
      // This tells it to parse the query portion of the URL.
      const parsedUrl = parse(req.url, true)
      const { pathname, query } = parsedUrl

      if (pathname === '/a') {
        await app.render(req, res, '/a', query)
      } else if (pathname === '/b') {
        await app.render(req, res, '/b', query)
      } else {
        await handle(req, res, parsedUrl)
      }
    } catch (err) {
      console.error('Error occurred handling', req.url, err)
      res.statusCode = 500
      res.end('internal server error')
    }
  })
    .once('error', (err) => {
      console.error(err)
      process.exit(1)
    })
    .listen(port, () => {
      console.log(`> Ready on http://${hostname}:${port}`)
    })
})

سپس فایل package.json رو ویرایش کنید و کد زیر رو اصلاح کنید

"start": "NODE_ENV=production node server.js"

در نهایت پروژه رو npm run build بگیرید و تمامی فایل های پروژه رو زیپ کنید بجز پوشه node mudol و درون یک پوشه سرور اکستراکت کنید
اگر سرور تون سی پنل قسمت node aplication داشته باشد و اگر نداشت سون هاست برای هاست های اشتراکی این امکارن رو قرار داده
از طریق node aplication پوشه سورس رو یه پوشه پابلیک دامنه ست میکنید نسخه نود جی اس رو ست میکنید
فایل server.js رو به عنوان فایل سرور معرفی میکنید
بعد دکمه npm install رو بزنید و در نهایت پروژه روی دامنه ای که ست کردید اجرا میشود

شاید پاسخ شما همین‌جا باشد

محمدرضا
محمدرضا
@amirahmadim24

تخصص: Front-End Developer

سلام. @shift.delete
روی vps من داکر رو نصب کردم و ایمیج مربوط به این سایت رو ایجاد کردم و روی پورت مشخص بر روی سرور بالا آوردم و حالا باید چطوری به دامنه ای که میخوام وصلش کنم؟ ممنون میشم که راهنماییم کنید

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام