🙂 İNSANLARIN EN HAYIRLISI INSANLARA FAYDALI OLANDIR 🙂

Ramazan HABER / React Next Js / React Next.js uygulamasını Windows IIS üzerinde ayağa kaldırma

1-) React Next Js  - React Next.js uygulamasını Windows IIS üzerinde ayağa kaldırma

 

 

 

1. ADIM  nextConfig.js bu adımlar yapılır

 

 

  const nextConfig = {

  output: "export",

  reactStrictMode: true,

     return config;

  },

};

 

module.exports = nextConfig;

 

 

 

2. ADIM

 

 

npm run build && npm run export

 

 

3. ADIM


bunları yaptıktan sonra anadizin de out diye klasör oluşur. bu klasörü direkt iis üzerinde çalıştırabilirsin.


 

 

DİĞER BAKMASANDA OLUR

 

 

basePath verirsen /pavo/favoicon.png olur. doğru yolu bulması içindir

 

const nextConfig = {

  output: "export",

  basePath: "/pavo",

  assetPrefix: "/pavo/",

  reactStrictMode: true,

     return config;

  },

};

 

module.exports = nextConfig;

 

 

 

 

 

Next.js'te next export komutu, projeyi tamamen statik HTML/CSS/JS dosyalarına dönüştürerek dağıtım yapmanı sağlar. Aşağıda bu yöntemin avantajları ve dezavantajlarını detaylı şekilde bulabilirsin:


✅ Avantajları (Advantages)

1. Sunucusuz Yayın (Serverless Hosting):

  • Export edilen site, sadece statik dosyalardan oluşur. Node.js veya özel bir sunucu gerekmez.
  • Herhangi bir CDN (Netlify, Vercel, GitHub Pages, IIS, Apache) üzerinden kolayca barındırılabilir.

2. Yüksek Performans:

  • Tüm sayfalar önceden oluşturulduğu için sunucuya gerek kalmadan hızlı şekilde kullanıcıya iletilir.
  • SSR yükü yoktur; sadece HTML sunulur.

3. Daha Az Güvenlik Açığı:

  • Sunucu tarafı çalışmadığı için potansiyel saldırı yüzeyi azalır.
  • API endpoint'leri yoktur, sadece statik içerik sunulur.

4. Kolay Taşınabilirlik:

  • /out klasörü herhangi bir sunucuya kopyalanarak kolayca taşınabilir.
  • IIS gibi klasik sunuculara kolay entegrasyon sağlar.

5. Düşük Barındırma Maliyeti:

  • Sunucusuz ortamlarda barındırılabildiği için maliyet düşer.


❌ Dezavantajları (Disadvantages)

1. Sunucu Taraflı Özellikler Kullanılamaz:

  • getServerSideProps() desteklenmez.
  • Gerçek zamanlı veri gerektiren sayfalar (örneğin kullanıcıya özel içerik) çalışmaz.

2. Dinamik Routing Kısıtlıdır:

  • [id].js gibi dinamik rotalar için tüm ihtimallerin build sırasında oluşturulması gerekir.
  • Çok fazla içerik varsa build süresi uzar, dosya boyutu büyür.

3. API Routes Çalışmaz:

  • Next.js’in /api/ klasöründeki sunucu fonksiyonları devre dışıdır.
  • Ayrı bir backend gerekir.

4. Yeniden Oluşturma (Revalidation) Yoktur:

  • ISR (Incremental Static Regeneration) desteklenmez.
  • Veri değiştiğinde siteyi yeniden build + export etmen gerekir.

5. Yalnızca getStaticProps ve getStaticPaths Uyumlu:

  • Dinamik içerik senaryoları build time sırasında çözülmelidir.


Sonuç:

Senaryo

next export Uygun mu?

Blog, ürün kataloğu, tanıtım sitesi

✅ Evet

Girişli sistem, kullanıcıya özel içerik

❌ Hayır

API endpoint’leri içeren uygulama

❌ Hayır

Çok sık içerik güncellenmeyen statik siteler

✅ Evet

Yüksek SEO ve hızlı yüklenme istenen sayfalar

✅ Evet (statik iyidir)

 

 2025 Haziran 25 Çarşamba
 376