Next.js için iki yayın yolu vardır: statik export ve çalışan Node.js sunucusu. Seçim hosting fiyatından önce uygulamanın dinamik sunucu işlevlerine bağlıdır. npm run dev geliştirme içindir; üretim hizmeti olarak açık bırakmayın.
1. Statik mi, sunucu mu?
| İhtiyaç | Yol |
|---|---|
| Derleme anında üretilebilen tanıtım sayfaları | Statik export adayı |
| İstek anında oturum/kişisel veri/Server Actions | Node.js veya uyumlu platform |
| Sunucuda API ve dinamik işleme | Statik export yeterli olmayabilir |
| next/image varsayılan sunucu optimizasyonu | Statik export için uygun loader/alternatif gerekir |
Projenizin Next.js sürümüne ait desteklenmeyen export özelliklerini resmî belgede kontrol edin. Başarılı yerel dev sunucusu, export'un da başarılı olacağını göstermez.
2. Statik export yolu
Next yapılandırmasına mevcut ayarları koruyarak ekleyin:
// next.config.mjs
const nextConfig = {
output: 'export',
trailingSlash: true,
};
export default nextConfig;
npm ci
npm run build
Başarı sonrası varsayılan out klasörünün içeriği statik hostinge yüklenir. Dinamik rotaların hangi sayfalarının üretileceği derlemede bilinmeli. Alt sayfayı doğrudan açıp 404 davranışını kontrol edin. Eski next export komutunu güncel projeye zorlamayın.
3. Node.js sunucusu yolu
Statik export ayarını kullanmadan build alın. Projede build: next build ve start: next start scriptleri varsa:
npm ci
npm run build
npm run start -- --hostname 127.0.0.1 --port 3000
Bu ön plandaki testtir; SSH kapanınca sürekli çalışmayı garanti etmez. Yerelde curl -I http://127.0.0.1:3000/ ile yanıt alın. Ardından panelin Node uygulama yöneticisi veya ayrı yetkisiz kullanıcıyla systemd hizmeti kurun. Node.js hosting rehberindeki hizmet örneğinde ExecStart satırını gerçek npm yolu ve start komutuyla uyarlayın.
4. Proxy ve ortamı bağlayın
HTTPS sunucusu trafiği yerel 3000 portuna yönlendirsin. PUBLIC/NEXT_PUBLIC değerlerin tarayıcıya girebildiğini unutmayın; secret'ları sunucu ortamında tutun. Derleme zamanı kullanılan ortam değerlerini değiştirdiğinizde yeniden build gerekebilir. Çoklu instance varsa cache ve oturum tasarımını ayrıca planlayın.
5. Kabul testi
Ana sayfa, dinamik rota, giriş, API, görsel ve 404'ü sınayın. Süreci yeniden başlatıp uygulamanın açıldığını doğrulayın. 502 alıyorsanız önce yerel port/servis logu; eksik chunk hatasında build dosyalarıyla çalışan sürümün eşleşmesini kontrol edin. Önceki build'i ve uyumlu yapılandırmayı saklayın; veritabanı migration'ını yalnız dosya rollback'iyle geri alamazsınız.
Bilgiyi uygulanabilir projeye dönüştürelim.
İhtiyacınızı teknik, operasyonel ve ticari açıdan değerlendirip doğru çözüm yol haritasını birlikte oluşturalım.
Projenizi Anlatın



