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

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

برای استقرار یک برنامه با فریمورک Nuxt.js روی هاست Node.js راه حل‌هایی وجود دارد.
راه حل ساده استفاده از کامند زیر برای تولید فایل‌های استاتیک و سپس قراردادن آن روی هاست است.

npm run generate

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

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

۲. تنظیم فایل nuxt.config.js

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

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

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

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

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

 

const express = require('express')
const consola = require('consola')
const { Nuxt, Builder } = require('nuxt')
const app = express()

// Import and Set Nuxt.js options
const config = require('../nuxt.config.js')
config.dev = process.env.NODE_ENV !== 'production'

async function start () {
  // Init Nuxt.js
  const nuxt = new Nuxt(config)

  const { host, port } = nuxt.options.server

  // Build only in dev mode
  if (config.dev) {
    const builder = new Builder(nuxt)
    await builder.build()
  } else {
    await nuxt.ready()
  }

  // Give nuxt middleware to express
  app.use(nuxt.render)

  // Listen the server
  app.listen(port, host)
  consola.ready({
    message: `Server listening on http://${host}:${port}`,
    badge: true
  })
}
start()

۲. تنظیم فایل nuxt.config.js

برای سازگار کردن فایل nuxt.config.js در صورتی که از package استفاده می‌کنید، باید آن‌را حذف نمایید.

برای نمونه قبل و بعد از انجام تغییر فایل nuxt.config.js به صورت زیر خواهد شد.

قبل از تغییر:

import pkg from './package'

export default {
... config
}

 

بعد از تغییر:

module.exports = {
... config
}

 

توجه نمایید که تمام موارد استفاده pkg نیز از داخل کانفیگ حذف شده باشد.

 

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

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

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

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

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

Powered by WHMCompleteSolution


support agent
How can i help you?