Biraz detaylı aktarmam gerekirse: NEXT_PUBLIC_API_URL dediğimiz şey aslında 'Environment variables' olarak geçer ve her bilgisayarda olur (örneğin terminalinize girip 'env' komutunu çalıştırıp görebilrsiniz) .env.* şeklinde oluşturulan dosyalar Next.js'e özgü olmadan bütün programlar da o an çalıştırılan sunucunun -- local dahil -- 'env' variable listesine eklenir ve biz programın her hangi bir anında process'e ulaşıp içerisinden env'leri okuruz. Bu bilgilerden yola çıkarak: Next.js app'ini nerede deploy ederseniz örneğin Vercel sunucularında host ederseniz, .env'leriniz Vercel'de ki app'inizin deploy edildiği makinenin env'lerinin içerisinde yer alır (docker container büyük ihtimal). Github sadece kodu depoladığınız yerdir. Kendi dedicated sunucunuzda tabii ki de Next.js sitenizi deploy edebilrsiniz. 'yarn build' ya da 'npm run build' dedikten sonra build dosyaları '.next' klasörü içinde oluşur (gizli klasör ide'den veya gizli klasörleri göster diyip görebilrsiniz) daha sonrasında oluşturulan '.next' klasörünü her hangi bir Node.js destekleyen bir sunucuda deploy edebilirsiniz. Hatta docker'ize edip daha hızlı ve kolay bir şekilde bir container içinde ayaklandırabilrsiniz. Vercel CDN desteği veriyor fakat temel mantığı end-to-end bir frontend projesini deploy etmenize ve barındırmanıza yarayan bir servis. Ve tabii ki de bandwith gibi config'leri var.
Emeğinize sağlık. Teşekkür ederiz.
Bir sorum olacaktı. Next.js ile hazırladığımız sitemizde deploy aşamasında;
Next_public_api _url kısmına kendi domainadi.com sitemizi yazdığımızda site içeriğimiz nerede barındırılıyor. github'da mı, yoksa Vercel'de mi?
Kendi dedicated sunucularımızda Next.js ile hazırladığımız sitemizi barındıramıyor muyuz? Evet ise nasıl? Vercel'den sadece CDN hizmeti gibi bir hizmet mi alıyoruz yoksa? Zira bandwith satıyor gibi geldi. Teşekkürler.