โลโก้ Nuxt
ภาษาโปรแกรมและ FrameworkMIT (โอเพนซอร์ส)

Nuxt คืออะไร และวิธี Deploy บน Cloud Server

Nuxt คือเฟรมเวิร์กสำหรับสร้างเว็บด้วย Vue ที่เรนเดอร์ฝั่งเซิร์ฟเวอร์ได้ ทำให้เว็บโหลดเร็วและเครื่องมือค้นหาอ่านเนื้อหาได้ครบ เหมาะกับเว็บที่ต้องพึ่งการค้นหาเป็นช่องทางหลัก

ติดตั้งบนเซิร์ฟเวอร์เองได้
ได้
สเปกเริ่มต้นที่แนะนำ
2 vCPU · RAM 4 GB
ไลเซนส์
MIT (โอเพนซอร์ส)
เว็บทางการ
เปิดเว็บไซต์
สร้าง Cloud Server เดี๋ยวนี้
  • ISO/IEC 27001
  • ISO 22301
  • ISO 20000-1
  • CSA-STAR

Data Center ในไทย มาตรฐาน TIA-942 Tier 3+ ข้อมูลอยู่ในประเทศไทย

Nuxt คืออะไร

Nuxt เพิ่มความสามารถที่เว็บงานจริงต้องใช้ให้กับ Vue ทั้งการเรนเดอร์ฝั่งเซิร์ฟเวอร์ การจัดเส้นทางอัตโนมัติจากโครงสร้างไฟล์ และการจัดการข้อมูล SEO ของแต่ละหน้า

จุดที่สำคัญกับเว็บธุรกิจคือการเรนเดอร์ฝั่งเซิร์ฟเวอร์ ซึ่งทำให้เครื่องมือค้นหาเห็นเนื้อหาเต็มตั้งแต่คำขอแรก และผู้ใช้เห็นหน้าเว็บทันทีแทนที่จะเห็นหน้าเปล่าระหว่างรอสคริปต์ทำงาน

ระบบยังเลือกวิธีสร้างหน้าได้ตามความเหมาะสม หน้าที่ไม่เปลี่ยนบ่อยสร้างล่วงหน้าเป็นไฟล์คงที่ ส่วนหน้าที่ต้องแสดงข้อมูลล่าสุดเรนเดอร์ตอนมีคำขอ ทำให้ได้ทั้งความเร็วและความถูกต้อง

แผนผังการวางระบบ Nuxt บน Cloud Server หนึ่งเครื่องที่ Data Center ในประเทศไทย ผู้ใช้เข้าถึงผ่านไฟร์วอลล์ที่เปิดเฉพาะพอร์ต 443, 3000 ตัว Nuxt และข้อมูลอยู่บนเครื่องเดียวกัน เริ่มต้นที่ 2 vCPU แรม 4 GB และมีสำเนาสำรองเขียนออกไปเก็บอีกไซต์หนึ่ง
Nuxt ทำงานบน Cloud Server เครื่องเดียวได้ครบ เปิดเฉพาะพอร์ตที่จำเป็น ข้อมูลและสำเนาสำรองอยู่ใน Data Center ในประเทศไทย

ความสามารถเด่นของ Nuxt

เรนเดอร์ฝั่งเซิร์ฟเวอร์

เครื่องมือค้นหาเห็นเนื้อหาครบและผู้ใช้เห็นหน้าทันที

จัดเส้นทางจากโครงสร้างไฟล์

สร้างหน้าใหม่เพียงเพิ่มไฟล์ในโฟลเดอร์ที่กำหนด

จัดการ SEO ของแต่ละหน้า

ตั้งชื่อเรื่อง คำอธิบาย และข้อมูลโครงสร้างได้ในหน้าเดียวกัน

เลือกวิธีสร้างหน้าได้

ผสมหน้าที่สร้างล่วงหน้ากับหน้าที่เรนเดอร์ตอนมีคำขอ

ระบบโมดูลที่ครบ

เพิ่มความสามารถอย่างการจัดการภาพและ Sitemap ได้ง่าย

ใช้ Nuxt ทำอะไรได้บ้าง

  • เว็บบริษัทและเว็บขายสินค้าที่ต้องพึ่งการค้นหา
  • เว็บเนื้อหาที่ต้องการคะแนนประสิทธิภาพสูง
  • หน้าเว็บของแอปที่ต้องเรนเดอร์ให้เครื่องมือค้นหาอ่านได้
  • ทีมที่ถนัด Vue และต้องการเฟรมเวิร์กที่พร้อมใช้งานจริง

สเปก Cloud Server ที่แนะนำ

แผนภาพเทียบสเปก Cloud Server สำหรับ Nuxt 3 ระดับ เริ่มจาก 2 vCPU แรม 4 GB ดิสก์ NVMe 40 GB ไปจนถึง 8 vCPU ขึ้นไป แรม 16 GB ขึ้นไป ดิสก์ NVMe 150 GB ขึ้นไป โดยเทียบขนาดแยกตามแต่ละคอลัมน์
เริ่มจากระดับที่ตรงกับการใช้งานตอนนี้ แล้วเพิ่ม CPU และ RAM ทีหลังได้บนเครื่องเดิม
ระดับการใช้งานvCPURAMDisk
เริ่มต้นเว็บที่มีผู้ชมไม่มาก2 vCPU4 GBNVMe 40 GB
แนะนำเว็บงานจริงที่มีผู้ชมต่อเนื่อง4 vCPU8 GBNVMe 80 GB
ทราฟฟิกสูงหลาย Instance หลังตัวกระจายโหลด8 vCPU ขึ้นไป16 GB ขึ้นไปNVMe 150 GB ขึ้นไป

ดูราคาตามสเปกได้ที่ ราคา Cloud Compute หรือให้ทีมงานช่วยประเมินสเปกจากปริมาณผู้ใช้จริงของคุณ

วิธีติดตั้ง Nuxt บน Cloud Server ของ THAI DATA CLOUD

ขั้นตอนด้านล่างใช้กับ Cloud Server ที่เพิ่งสร้างใหม่จากหน้าจัดการของ THAI DATA CLOUD ได้ทันที ถ้าไม่สะดวกทำเอง ทีมวิศวกรของเราติดตั้งและตั้งค่าให้ฟรีสำหรับลูกค้า Cloud Server

สิ่งที่ต้องเตรียม

  • Node.js รุ่น LTS ที่โปรเจกต์รองรับ
  • PM2 หรือ systemd สำหรับรันเป็นบริการ
  • Nginx พร้อมใบรับรอง SSL
  • ฐานข้อมูลหรือ API ที่เว็บต้องเรียกใช้

ทดสอบบน Ubuntu Server 24.04 LTS

  1. 1

    ติดตั้ง Node.js และเครื่องมือ

    curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
    sudo apt -y install nodejs nginx
    sudo npm install -g pm2
  2. 2

    ดึงโค้ดและบิลด์

    cd /var/www
    sudo git clone [email protected]:team/website.git
    cd website
    npm ci
    npm run build
  3. 3

    ตั้งค่าตัวแปรสภาพแวดล้อม

    ตั้งที่อยู่เว็บจริงให้ถูกต้อง เพราะมีผลกับลิงก์ตามรูปแบบมาตรฐานและข้อมูลที่ใช้แชร์บนโซเชียล

    NUXT_PUBLIC_SITE_URL=https://www.example.com
    NUXT_DB_URL=postgres://user:[email protected]:5432/appdb
    NUXT_SESSION_SECRET=PasteALongRandomStringHere
  4. 4

    รันเป็นบริการ

    pm2 start .output/server/index.mjs --name website
    pm2 startup systemd
    pm2 save
  5. 5

    ตั้ง Nginx เป็น Reverse Proxy

    server {
      listen 443 ssl;
      server_name www.example.com;
    
      location / {
        proxy_pass http://127.0.0.1:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Real-IP $remote_addr;
      }
    
      location /_nuxt {
        proxy_pass http://127.0.0.1:3000;
        add_header Cache-Control "public, max-age=31536000, immutable";
      }
    }
  6. 6

    ตรวจ SEO หลัง Deploy

    ตรวจว่า Sitemap และไฟล์กำหนดการเก็บข้อมูลของเครื่องมือค้นหาทำงานถูกต้อง และลิงก์ตามรูปแบบมาตรฐานชี้ไปที่โดเมนจริง

    curl -s https://www.example.com/sitemap.xml | head
    curl -s https://www.example.com/robots.txt

ตั้งที่อยู่เว็บจริงในตัวแปรสภาพแวดล้อมเสมอ เพราะถ้าไม่ตั้งจะทำให้ลิงก์ตามรูปแบบมาตรฐานและข้อมูลสำหรับแชร์ชี้ไปผิดที่ ซึ่งกระทบ SEO โดยตรง

พอร์ตที่ต้องเปิดบน Firewall

พอร์ตโปรโตคอลใช้ทำอะไร
443TCPHTTPS ผ่าน Nginx
3000TCPพอร์ตภายในของแอป

สิ่งที่ควรทำต่อหลังติดตั้งเสร็จ

  • ให้แอปฟังเฉพาะภายในเครื่องและเปิดสู่ภายนอกผ่าน Nginx
  • เก็บค่าลับในตัวแปรที่ไม่ถูกส่งไปยังเบราว์เซอร์
  • ตั้งส่วนหัวความปลอดภัยที่ Nginx
  • อัปเดตแพ็กเกจตามรอบและตรวจการแจ้งช่องโหว่

ทำไมควรรัน Nuxt บน Cloud Server ของ THAI DATA CLOUD

Data Center ในประเทศไทย มาตรฐาน ISO/IEC 27001 และ ISO 22301 พร้อมทีมวิศวกรคนไทยดูแลตลอด 24 ชั่วโมง

ค่าใช้จ่ายคงที่ตามสเปกเครื่อง คาดการณ์งบได้แน่นอน

เชื่อมกับฐานข้อมูลใน Private Network ได้โดยตรง

ผู้ชมในไทยได้ความเร็วที่ดีที่สุดเพราะเซิร์ฟเวอร์อยู่ในประเทศ

คำถามที่พบบ่อยเกี่ยวกับ Nuxt

Nuxt ต่างจาก Vue ธรรมดาอย่างไร

Vue เป็นไลบรารีสำหรับสร้างส่วนติดต่อผู้ใช้ ส่วน Nuxt เป็นเฟรมเวิร์กที่เพิ่มการเรนเดอร์ฝั่งเซิร์ฟเวอร์ การจัดเส้นทาง และการจัดการ SEO เข้ามาให้พร้อม เว็บที่ต้องพึ่งการค้นหาจึงควรใช้ Nuxt

ต้องใช้เซิร์ฟเวอร์ Node.js ไหม

ต้องใช้ถ้าต้องการเรนเดอร์ฝั่งเซิร์ฟเวอร์ ส่วนเว็บที่เนื้อหาไม่เปลี่ยนบ่อยสร้างเป็นไฟล์คงที่แล้วเสิร์ฟด้วยเว็บเซิร์ฟเวอร์ธรรมดาได้ ซึ่งใช้ทรัพยากรน้อยกว่ามาก

ทำให้เว็บติดอันดับดีขึ้นจริงไหม

ช่วยในส่วนเทคนิคคือเครื่องมือค้นหาอ่านเนื้อหาได้ครบและหน้าเว็บโหลดเร็ว ซึ่งเป็นปัจจัยหนึ่ง แต่การติดอันดับยังขึ้นกับคุณภาพเนื้อหาและปัจจัยอื่นอีกมาก

ให้เราติดตั้ง Nuxt ให้ฟรี บน Cloud Server ในไทย

แจ้งความต้องการสั้น ๆ ทีมวิศวกรจะช่วยประเมินสเปก ติดตั้ง และตั้งค่าความปลอดภัยให้พร้อมใช้งาน ปรึกษาฟรี ไม่มีข้อผูกมัด