🙂 İ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
 103