Setelah membangun aplikasi lengkap menggunakan routing, layout, form, dan integrasi API, langkah terakhir adalah membawa aplikasi ke lingkungan live agar bisa diakses publik, sekaligus memastikan performa dan SEO dalam kondisi optimal.


🎯 Tujuan Part 5


📦 1. Build untuk Produksi

Sebelum deployment, jalankan perintah build:

npm run build

Untuk melihat hasil build:

npm start

Folder .next akan berisi file hasil kompile yang siap dideploy.


🌐 2. Deployment Otomatis ke Vercel (Rekomendasi)

Langkah:

  1. Push project ke GitHub
  2. Buka https://vercel.com
  3. Hubungkan akun GitHub dan pilih repositori
  4. Vercel otomatis mendeteksi proyek Next.js
  5. Klik Deploy dan tunggu build selesai

🎯 Vercel memberikan:


💾 3. Deployment Manual via VPS

Jika ingin deploy ke server sendiri (misal VPS Ubuntu), langkahnya:

a. Upload Project via Git atau FTP

Pastikan folder node_modules tidak ikut di-upload.

b. Install Node.js & PM2 di VPS

sudo apt update
sudo apt install nodejs npm
npm install -g pm2

c. Jalankan Build & Server

npm install
npm run build
pm2 start npm --name "nextapp" -- run start

d. Reverse Proxy dengan Nginx

Tambahkan config di /etc/nginx/sites-available/nextapp:

server {
    listen 80;
    server_name yourdomain.com;

    location / {
        proxy_pass http://localhost:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}

Aktifkan:

sudo ln -s /etc/nginx/sites-available/nextapp /etc/nginx/sites-enabled
sudo systemctl restart nginx

🔍 4. Optimasi Performa Produksi

Berikut checklist optimasi Next.js:

OptimasiCara Implementasi
Kompresi gambarGunakan <Image> dari next/image
Preload font & assetTambahkan <link rel="preload"> di <head>
Minify kodeNext.js sudah otomatis minify saat build
Lazy load komponen beratGunakan dynamic() dari Next.js
Gunakan CDNVercel dan Netlify sudah menyediakannya otomatis

Contoh lazy load:

import dynamic from 'next/dynamic';
const HeavyComponent = dynamic(() => import('./HeavyComponent'));

📈 5. SEO Produksi

SEO di Next.js ditingkatkan dengan:

a. Metadata per halaman

export const metadata = {
  title: 'Judul Halaman',
  description: 'Deskripsi halaman ini untuk SEO',
};

b. Gunakan tag heading <h1>, <h2>, dll secara semantik

c. Gunakan gambar dengan alt

d. Sitemap & robots.txt

Gunakan plugin next-sitemap:

npm install next-sitemap

Tambahkan di next-sitemap.config.js:

module.exports = {
  siteUrl: 'https://elektranetworkvision.com',
  generateRobotsTxt: true,
};

🧠 Tips Tambahan


🛠️ Elektra Network Vision Siap Membantu Anda Go Live

Ingin tim ahli membantu Anda dalam:

💼 Kami bantu dari build hingga deployment profesional.
🌐 elektranetworkvision.com — Mitra digital tepercaya untuk Next.js dan solusi web modern.

Leave a Reply

Your email address will not be published. Required fields are marked *