Ücretsiz HTML site hostingi, yıllarca "reklam dolu, yavaş, güvenilmez" olarak anılırdı. 2026 itibarıyla durum tamamen değişti: statik site barındırma dünyası modern CDN'lerin, JAMStack mimarisinin ve Git tabanlı deploy akışlarının sayesinde, sıfır lira maliyetle saniyeler içinde yüzlerce milisaniye altında yanıt veren, otomatik HTTPS'li, küresel edge ağında dağıtılan siteler kurmanıza imkân tanıyor. Ama bu cömert dünya tehlikesiz değil: hangi sağlayıcının gerçek bir ücretsiz katmanı olduğunu, hangisinin gizli sınırlamalarla seni kandırdığını, custom domain'i nasıl bağlayacağını, hangi durumda paralı plana geçmen gerektiğini bilmek hâlâ teknik bir konu. Bu rehber, küçük bir kişisel sayfadan çok adımlı belgeleme sitelerine kadar her senaryoyu kapsayan vendor-neutral bir bakış sunuyor.
İlgili rehberler: Hosting türleri ve seçim rehberi · DNS ayarları ve değiştirme · Let's Encrypt ile ücretsiz SSL · Domain ve WHOIS sorgulama · Sayfa hızı ve Core Web Vitals 2026
Statik HTML Site Nedir, Neden Bu Kadar Ucuza Yayınlanabilir?
Statik bir HTML site, sunucuda her istek geldiğinde dinamik olarak çalıştırılan PHP, Node.js veya Python kodu yerine, önceden derlenmiş .html, .css, .js ve görsel dosyalardan oluşur. Sunucu yalnızca dosyayı diskten okuyup HTTP cevabıyla iletir; veritabanı sorgusu yoktur, server-side render yoktur, runtime yoktur. Bu mimarinin doğal sonucu: aşırı düşük operasyonel maliyet. Bir CDN edge node'u dünyada saniyede milyonlarca statik dosya servisi yapabilir; sağlayıcılar için bu trafik o kadar ucuzdur ki, kişisel projelere bedava dağıtmaları reklam görüntülemekten daha kârlıdır.
Statik denildiğinde "sade ve sınırlı" anlamına gelmiyor. Modern statik site jeneratörleri (Hugo, Astro, Eleventy, Jekyll, Next.js'in static export modu, Gatsby, SvelteKit static adapter) Markdown dosyalarından, headless CMS'lerden veya bir API'den içerik çekip build aşamasında HTML üretir. Sonuç: dinamik bir CMS'in yönetim kolaylığı + statik dosya servisinin hızı ve güvenliği. Daha derin bir bakış için Nginx yapılandırma rehberini inceleyebilirsin.
Ücretsiz HTML Hosting Sınıfları: 2026 Manzarası
Tüm "bedava HTML site" sağlayıcıları aynı kategoride değil. Pratikte üç ayrı dünya var ve karıştırırsan yanlış araç seçersin:
- Modern statik / JAMStack platformları: Netlify, Vercel, Cloudflare Pages, GitHub Pages, GitLab Pages, Render, Firebase Hosting, Surge.sh, DigitalOcean App Platform. Git push ile deploy, otomatik HTTPS, global CDN, build pipeline. Geliştiriciler için altın standart.
- Drag-and-drop / instant upload servisler: Tiiny.host, Static.app, Static.run, Netlify Drop, EdgeOne Pages, Surge CLI. ZIP yükleyip dakikalar içinde URL almak için. Hesap bile gerektirmeyenler var.
- Geleneksel ücretsiz cPanel hostingleri: InfinityFree, AwardSpace, 000WebHost, Freehostia, Byethost, x10hosting. PHP + MySQL desteği var; saf statik için fazla, ama dinamik küçük projeler için anlamlı olabilir.
Saf bir HTML/CSS/JS portföy sayfası yayınlayacaksan ilk grup en doğrusudur. Eğer eski bir PHP scripti çalıştırman gerekiyorsa üçüncü gruba bakman gerekiyor; ama dinamik gereksinimini yeniden düşünmen iyi olur — pek çok form, yorum, arama, ödeme ihtiyacı bugün üçüncü taraf servislerle (Formspree, Disqus, Algolia, Stripe Checkout) statik bir sitenin üstüne entegre edilebiliyor. Statik artı SaaS kombinasyonu için API rate limiting yazımıza da göz atabilirsin.
Karar Matrisi: Hangi Sağlayıcı Hangi Senaryoya
İhtiyaca göre özet bir yönlendirme. Aşağıdaki tablodan önce kendine üç soru sor: (1) Site Git deposunda mı yoksa elimde sadece bir ZIP mi var? (2) Build pipeline gerekiyor mu (npm run build türü)? (3) Aylık trafik ne kadar olacak?
- Sadece bir HTML klasörüm var, hızlı bir link istiyorum: Tiiny.host, Netlify Drop, EdgeOne Pages, Surge.sh.
- GitHub'da repom var, push ile yayınlamak istiyorum: GitHub Pages (en sade), Cloudflare Pages (en hızlı CDN), Vercel (Next.js için en iyi entegrasyon), Netlify (form/identity gibi ekstralar için).
- Yüksek trafikli, düşük gecikmeli site lazım: Cloudflare Pages (sınırsız bant genişliği iddiası ile öne çıkıyor), Vercel Pro veya Netlify Pro'ya geçmeyi de hesapla.
- Belgeleme sitesi (Docusaurus, MkDocs, VitePress): GitHub Pages + GitHub Actions, Cloudflare Pages, Read the Docs.
- PHP/MySQL gerekiyor, küçük dinamik proje: InfinityFree (PHP 8.3, MySQL 8, 5 GB disk), AwardSpace (PHP 7, MySQL 5.7, 5 GB ay/trafik).
- Ekibimle ortak çalışacağım, preview deploy'ları olmazsa olmaz: Netlify, Vercel veya Cloudflare Pages.
GitHub Pages: Açık Kaynağın Klasik Çözümü
GitHub Pages, GitHub repolarından doğrudan statik site yayınlamayı sağlayan, 2008'den beri var olan ücretsiz servistir. Üç dağıtım kipinden seçim yaparsın: main branch'in kökü, main branch'in /docs klasörü veya özel bir gh-pages branch'i. Jekyll entegrasyonu yerleşiktir; Markdown dosyaları otomatik HTML'e dönüştürülür. Sürüm kontrolü zaten Git ile yapıldığı için CI/CD ekstra bir kavram olmaktan çıkar — git push deploy'dur.
Limitler: bir hesap başına soft 100 GB/ay bant genişliği, deploy başına 10 dakika build limiti, depo boyutu öneri 1 GB altı. Bunlar küçük ve orta projeler için fazlasıyla yeterli; ama yüksek trafikli üretim siteleri için Cloudflare Pages veya Netlify daha güvenli. Deploy akışını detaylandıran bir GitHub Actions CI/CD rehberimiz mevcut.
# Yeni bir GitHub Pages sitesi başlatma
mkdir benim-portfoyum && cd benim-portfoyum
git init
echo '# Hello World' > index.md
git add.
git commit -m 'ilk commit'
git branch -M main
# GitHub'da boş repo açtıktan sonra
git remote add origin git@github.com:KULLANICI/benim-portfoyum.git
git push -u origin main
# GitHub repo Settings -> Pages bölümünden:
# Source: Deploy from a branch
# Branch: main / root
# 1-2 dakikada https://KULLANICI.github.io/benim-portfoyum/ yayında
Custom Domain Bağlama (Apex + WWW)
GitHub Pages özel alan adını (apex domain ve subdomain) ücretsiz destekler ve Let's Encrypt sertifikası otomatik üretilir. Apex (kök domain) için A kayıtları, www subdomain için CNAME kullanılır. DNS değişikliklerinin nasıl yapılacağını DNS rehberimizden öğrenebilirsin.
; Apex (ornek.com) için A kayıtları (GitHub Pages anycast IP'leri)
ornek.com. 3600 IN A 185.199.108.153
ornek.com. 3600 IN A 185.199.109.153
ornek.com. 3600 IN A 185.199.110.153
ornek.com. 3600 IN A 185.199.111.153
; AAAA (IPv6) kayıtları
ornek.com. 3600 IN AAAA 2606:50c0:8000::153
ornek.com. 3600 IN AAAA 2606:50c0:8001::153
ornek.com. 3600 IN AAAA 2606:50c0:8002::153
ornek.com. 3600 IN AAAA 2606:50c0:8003::153
; www subdomain CNAME
www.ornek.com. 3600 IN CNAME KULLANICI.github.io.
DNS yayılması (TTL'e göre 5 dakika ile 48 saat arası), ardından repo köküne CNAME dosyası eklenir (içeriği ornek.com). Settings → Pages bölümünden "Enforce HTTPS" seçeneği işaretlenir; sertifika 15 dakika içinde edinilir.
Cloudflare Pages: Sınırsız Bant Genişliği İddiasıyla
Cloudflare Pages, Cloudflare'in 300+ noktadaki anycast ağında dağıtım yaparak statik sitelere muhtemelen sektörün en cömert ücretsiz katmanını sunan platformdur. Free planda sınırsız istek, sınırsız bant genişliği, sınırsız ortak çalışan, ayda 500 build, eşzamanlı 1 build vaat ediliyor. Workers entegrasyonu ile dinamik fonksiyonlar eklenebiliyor; ama free Pages projesi başına saf statik sayfa sayısı 20.000 dosyayla, dosya başına 25 MB ile, deploy başına toplam 25 GB ile sınırlandırılmıştır.
# Cloudflare Wrangler CLI ile deploy
npm install -g wrangler
wrangler login
# Dist klasörünü deploy et (Pages projesi otomatik oluşur)
wrangler pages deploy./dist --project-name=benim-sitem
# Git tabanlı deploy için (önerilen):
# 1. Cloudflare dashboard -> Workers & Pages -> Create Application -> Pages
# 2. Connect to Git -> repo seç
# 3. Build command: npm run build (veya boş bırak saf HTML için)
# 4. Build output directory: dist (veya.)
# 5. Save and Deploy
Cloudflare'in en güçlü yanı, edge cache + Argo Smart Routing kombinasyonu sayesinde Türkiye'den ve gelişmekte olan ülkelerden gelen ziyaretçilerin gecikme süresini ciddi şekilde düşürmesi. Bir static site için TTFB değerinin 30-50 ms aralığına inmesi olağandır. Core Web Vitals 2026 yazımız bu metriklerin neden önemli olduğunu detaylandırıyor.
Netlify: Form, Identity ve Edge Functions ile Genişleyebilen Statik
Netlify, JAMStack ekosisteminin sembolüdür. Free planda 100 GB/ay bant genişliği, 300 build dakikası/ay, takım başına 1 ortak çalışan ve sınırsız site barındırma sunulur. Asıl gücü, statik site üstüne kolayca ekleyebileceğin Netlify Forms (her ay 100 form gönderimi free), Netlify Identity (auth), Netlify Functions (125k çağrı/ay) ve preview deploy akışlarıdır. Pull request açtığın anda site tarayıcıda incelenebilir bir benzersiz URL'de yayınlanır.
# Netlify CLI kurulumu
npm install -g netlify-cli
netlify login
# Hızlı bir deploy (saf HTML klasörü)
cd benim-statik-sitem
netlify deploy --prod --dir=.
# Git tabanlı deploy:
# netlify.toml dosyası repo köküne
#
# [build]
# command = "npm run build"
# publish = "dist"
#
# [[redirects]]
# from = "/eski-sayfa"
# to = "/yeni-sayfa"
# status = 301
Netlify Forms ile statik bir HTML formu sunucuya hiçbir kod yazmadan e-posta + dashboard'a düşebilir hale gelir. Tek yapacağın <form> etiketine data-netlify="true" ve isim eklemek:
<!-- Netlify Forms — sıfır backend kod -->
<form name="iletisim" method="POST" data-netlify="true" netlify-honeypot="bot-alani">
<input type="hidden" name="form-name" value="iletisim">
<p hidden><input name="bot-alani"></p>
<label>İsim<input type="text" name="isim" required></label>
<label>E-posta<input type="email" name="eposta" required></label>
<label>Mesaj<textarea name="mesaj" rows="6" required></textarea></label>
<button type="submit">Gönder</button>
</form>
Vercel: Next.js'in Doğal Evi
Vercel, Next.js'i geliştiren ekibin platformudur ve Next.js, SvelteKit, Astro, Nuxt gibi React/Vue tabanlı framework'lerle sürtünmesiz çalışır. Hobby (free) planda 100 GB/ay bant genişliği, sınırsız statik istek, 6.000 build dakikası, deploy başına 100 MB serverless function bundle, 1 milyon serverless invocation/ay sunuluyor. Ticari kullanım yasak — Hobby planın TOS'una göre yalnızca kişisel ve açık kaynak projeler içindir; e-ticaret bile küçük olsa Pro plana geçmen gerekir.
# Vercel CLI ile hızlı deploy
npm install -g vercel
vercel login
vercel # ilk çalışmada interaktif kurulum
vercel --prod
# vercel.json (statik site için)
# {
# "cleanUrls": true,
# "trailingSlash": false,
# "redirects": [
# { "source": "/eski", "destination": "/yeni", "permanent": true }
# ],
# "headers": [
# {
# "source": "/(.*)",
# "headers": [
# { "key": "X-Frame-Options", "value": "SAMEORIGIN" }
# ]
# }
# ]
# }
Vercel'in vercel.json ile sunucu davranışını yapılandırma esnekliği güçlüdür: redirect'ler, header'lar, ISR (Incremental Static Regeneration), edge functions, region pinning. Next.js 15 App Router rehberimizde bu seçeneklerin Next.js bağlamındaki kullanımını detaylandırdık.
GitLab Pages, Render ve Firebase Hosting
GitLab Pages, GitLab'ın CI sistemiyle entegre çalışan ücretsiz statik hosting servisidir; özel projeler için bile çalışır (özel repo - public site). Build için GitLab'ın aylık 400 CI/CD dakikası ücretsiz katmanı kullanılır. .gitlab-ci.yml içinde pages isimli özel bir job tanımlamak yeterlidir.
#.gitlab-ci.yml — GitLab Pages basit deploy
pages:
stage: deploy
image: alpine:latest
script:
- mkdir -p public
- cp -r./*.html./assets./css./js public/
artifacts:
paths:
- public
rules:
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
# Hugo build örneği
pages-hugo:
stage: deploy
image: registry.gitlab.com/pages/hugo:latest
script:
- hugo --minify --baseURL https://KULLANICI.gitlab.io/proje/
artifacts:
paths:
- public
Render, hem statik siteleri hem küçük arka uçları aynı dashboard'da yönetmek için kullanışlı. Free plan: sınırsız static site, otomatik HTTPS, global CDN, sınırsız ortak çalışan, 100 GB/ay bant genişliği. Build başına 750 dakika ücretsiz CI dakikası — hobby projeler için fazlasıyla yeterli.
Firebase Hosting Google'ın CDN'i üzerinde çalışır; Spark (free) planda 10 GB depolama, 360 MB/gün bant genişliği, 1 GB/ay özel domain trafiği sunar. Yapay zeka + Firestore + Auth ihtiyacı varsa tutarlı bir ekosistem; saf statik için biraz overkill kaçıyor ama özellikle SPA'lar için cazip.
Drag-and-Drop Servisler: Birkaç Dakikada Yayında
Bazen tek istediğin, hocaya göstereceğin bir bitirme projesi veya müşteriye onay aldıracağın hızlı bir mockup için 2 dakikada link almaktır. Bu durumda "sürükle-bırak" servisleri:
- Tiiny.host: ZIP yükle, subdomain seç, link al. Hesap gerekmiyor; ücretsiz katmanda 7 gün sonra link expire olur (ücretsiz hesap açarsan 1 ay).
- Netlify Drop (app.netlify.com/drop): Klasörü tarayıcıya sürükle, sonsuza kadar yayında bir
random-name.netlify.appURL'si. - Static.app: Online dosya yöneticisi, içerik düzenleme, form entegrasyonu — "hosting + lite CMS" hissi.
- Surge.sh: Geliştirici dostu komut satırı aracı.
npm i -g surgesonrası tek komutla yayında. - EdgeOne Pages (Tencent): Tek dosya yükleme limiti 25 MB, full domain yönetimi, ücretsiz HTTPS, küresel CDN.
# Surge.sh — komut satırından 30 saniyede deploy
npm install --global surge
cd benim-html-klasorum
surge
# email@adres.com istenir, parola seçilir
# project: <klasor adi otomatik dolar>
# domain: ornek.surge.sh (veya sahip olduğun custom domain)
# Yayında.
# Kendi alan adını bağlamak için:
# 1. surge ile dağıtırken domain alanına ornek.com yaz
# 2. DNS'te ornek.com için ANAME/ALIAS veya A kaydı: 45.55.110.124
Geleneksel Ücretsiz cPanel Hostingleri: Hâlâ Yeri Var Mı?
PHP + MySQL gerektiren küçük projelerde (eski WordPress, basit form-process scripti, öğrenci PHP ödevi, Joomla deneme kurulumu) modern statik sağlayıcılar yetersiz kalır. InfinityFree, AwardSpace, 000WebHost, Freehostia, Byethost, x10hosting gibi servisler bu boşluğu doldurur. Reklam dayatmazlar (paralı planlarına yönlendirmek dışında), Softaculous gibi tek tık kurulum panellerini sunarlar.
- InfinityFree: 5 GB disk, sınırsız bant genişliği iddiası, 400 MySQL veritabanı, PHP 8.3, MariaDB 11.4, ücretsiz SSL,.htaccess. Reklam yok. Disk hızı ve uptime SLA paralı planlardan düşüktür.
- AwardSpace: 1 GB depolama, 5 GB/ay trafik, MySQL 5.7, PHP 7, 1 hesapta 4 site (1 domain + 3 subdomain), e-posta hesapları, ClamAV antivirüs.
- 000WebHost (Hostinger'a bağlı): 300 MB depolama, 3 GB/ay trafik, PHP, MySQL, ücretsiz subdomain. "Bedava" plan ara sıra paralı plana itme amaçlı kısıtlamalarla geliyor.
- Freehostia: 250 MB depolama, 6 GB/ay trafik, PHP, 1 MySQL, sınırlı ama ad-free.
- x10hosting: Cloud altyapı, Softaculous, sınırsız subdomain, kayıt sonrası kullanım izleme.
Bu servislerin ortak kötü yanları: paylaşımlı IP'ler nedeniyle bazen e-posta başlığında düşük güven puanı, hesap aktivitesi yoksa askıya alınma riski, support'un ücretsiz tarafta yavaş olması, ve performansın paralı katmanlarla kıyaslanamaz olması. Üretim için değil; öğrenmek ve denemek için. Ciddi bir proje için VPS rehberimize ve hosting türleri yazımıza bakman önerilir.
Karşılaştırma Tablosu: 2026 Yaklaşık Limitler
Aşağıdaki değerler yaklaşık, sağlayıcıya göre değişir, 2026 verisi. Plan değişiklikleri sıkça olduğu için kayıt öncesi resmi sayfayı kontrol et.
- GitHub Pages: Soft 100 GB/ay bant, repo < 1 GB önerisi, build < 10 dk, custom domain + free SSL, ticari kullanım izinli (yumuşak limit).
- Cloudflare Pages: Sınırsız bant + sınırsız istek, 500 build/ay, deploy başı 25 GB / 20.000 dosya / dosya başı 25 MB, custom domain + free SSL.
- Netlify: 100 GB/ay bant, 300 build dk/ay, 100 form/ay, 125k function inv/ay, takım üye limiti var, custom domain + SSL.
- Vercel Hobby: 100 GB/ay bant, 6.000 build dk/ay, 1M function inv/ay, ticari kullanım YASAK, custom domain + SSL.
- Render Static: 100 GB/ay bant, sınırsız static site, 750 build dk/ay, free SSL.
- GitLab Pages: 400 CI dk/ay (free tier), 1 GB pages depolama, free SSL.
- Firebase Hosting: 10 GB depolama, 360 MB/gün bant, ücretsiz SSL, kullanım azsa kalıcı bedava.
- InfinityFree: 5 GB disk, sınırsız bant iddiası, MySQL/PHP, free SSL.
- AwardSpace: 1 GB disk, 5 GB/ay bant, MySQL/PHP, e-posta dahil.
- Tiiny.host (free): 3 dosya, dosya başı 3 MB, 7 günlük link, hesap açarsan 30 gün.
Custom Domain + Free SSL: A'dan Z'ye Akış
Bedava sağlayıcılar bile artık özel alan adı ve Let's Encrypt tabanlı ücretsiz SSL sunuyor. Süreç çoğu platformda aynı: alan adı al → DNS kayıtlarını sağlayıcıya yönlendir → sertifika otomatik üretsin. Detayları Let's Encrypt SSL rehberinde bulacaksın.
# Doğrulama: deploy sonrası HTTPS gerçekten çalışıyor mu?
curl -I https://ornek.com
# HTTP/2 200
# server: cloudflare (örn.)
# strict-transport-security: max-age=31536000
# Sertifika ayrıntıları
openssl s_client -connect ornek.com:443 -servername ornek.com </dev/null 2>/dev/null | \
openssl x509 -noout -issuer -dates
# DNS yayılması kontrolü (Türkiye'den + yurt dışından)
dig +short ornek.com @1.1.1.1
dig +short ornek.com @8.8.8.8
nslookup ornek.com 9.9.9.9
İlk kurulumdan sonra HSTS header'ını eklemek (max-age=31536000; includeSubDomains), HTTP -> HTTPS 301 yönlendirmesini doğrulamak ve SSL Labs ile A+ skoru almak iyi pratiktir. HTTPS ve TLS 1.3 rehberimiz modern şifreleme yapılandırmasını anlatıyor.
Performans: "Bedava" CDN'lerin Gerçek Hızı
Statik bir HTML sayfa sunmak yüksek mühendislik değil; ama farklı sağlayıcıların edge ağı, route algoritması ve cache stratejileri Türkiye'den yapılan ölçümde 60-300 ms aralığında belirgin bir TTFB farkı yaratır. Yaklaşık 2026 ölçümlerimiz (varyasyon var, kendi sitende test et):
- Cloudflare Pages: 25-60 ms TTFB (İstanbul edge'i), p95 LCP < 1.5s.
- Vercel Edge Network: 35-80 ms TTFB, Frankfurt birincil PoP — Türkiye'ye yakın.
- Netlify Edge CDN: 60-130 ms TTFB; daha az PoP olduğu için biraz geride.
- GitHub Pages (Fastly): 80-180 ms TTFB; iyi ama dinamik geliştirici sitelerinde başka platformlar daha hızlı.
- InfinityFree: 200-500 ms TTFB; CDN yok, paylaşımlı sunucu, yoğun saatlerde kötüleşir.
Performansı artırmak için önce build çıktını optimize et: 100 KB altı kritik CSS, lazy-load görseller, AVIF/WebP, font-display: swap, JS minify. Core Web Vitals 2026 rehberimiz bunu adım adım anlatıyor.
# Lighthouse CLI ile hızlı denetim
npm install -g lighthouse
lighthouse https://benim-sitem.pages.dev \
--output=html --output-path=./report.html \
--preset=desktop --only-categories=performance,accessibility,seo
# WebPageTest API üzerinden çoklu konum testi
curl "https://www.webpagetest.org/runtest.php?url=https://benim-sitem.pages.dev&\
location=ec2-eu-central-1&runs=3&f=json&k=API_KEY"
Statik Site Jeneratörleri: HTML'i Ölçeklenebilir Yazmak
Düz HTML 5 sayfa sınırını geçtiğinde tekrar eden header/footer'ları kopyala-yapıştır yönetmek dayanılmaz hale gelir. Statik site jeneratörü (SSG) Markdown veya MDX dosyalarından HTML üretir; tek bir layout değişikliği yüzlerce sayfaya yayılır. Popüler seçenekler:
- Hugo: Go ile yazılmış, dünyanın en hızlı SSG'si. Build süresi 10.000 sayfa için < 1 saniye. Belgeleme ve blog için ideal.
- Eleventy (11ty): Node.js tabanlı, framework-agnostik, JavaScript az veya hiç. Vanilla HTML severlere altın.
- Astro: 2026'nın yıldızı. Component'leri React, Vue, Svelte veya HTML olarak yazıp sıfır JS gönderebilirsin ("island architecture").
- Jekyll: Ruby tabanlı, GitHub Pages'in default'u. Kolayca öğrenilir; build hızı orta.
- Next.js static export:
output: 'export'ile React tabanlı statik site. Vercel/Netlify/Cloudflare hepsi destekler. - Docusaurus / VitePress / MkDocs: Belgeleme/dokümantasyon-odaklı SSG'ler. Algolia DocSearch ile arama dahi statik bir sitede çalışır.
# Astro ile yeni proje + Cloudflare Pages deploy
npm create astro@latest benim-blog
cd benim-blog
npm install
npm run dev # localhost:4321
npm run build #./dist/ klasörü üretir
# Cloudflare Pages'e deploy:
npx wrangler pages deploy./dist --project-name=blog-astro
# Hugo ile aynı akış
hugo new site benim-blog && cd benim-blog
hugo new posts/ilk-yazi.md
hugo --minify # public/ klasörü üretir
rsync -av public/ user@server:/var/www/ # veya pages deploy
Form, Yorum, Arama: Statik Siteyi Dinamikleştirme
"Statik site" kullanıcı etkileşimi olmaz demek değil. Doğru üçüncü taraf SaaS'lar ile bedava katmanda bile zengin işlevsellik ekleyebilirsin:
- Form: Netlify Forms (host'unun içinde), Formspree (50 gönderim/ay free), Getform, Web3Forms, Basin.
- Yorum: Disqus (reklamlı), Giscus (GitHub Discussions tabanlı, açık kaynak siteler için ideal), Utterances (GitHub Issues tabanlı), Cusdis (privacy-friendly).
- Arama: Algolia DocSearch (açık kaynak doc siteleri için ücretsiz), Pagefind (tamamen istemci-tarafı, build'de index üretir), Lunr.js, Fuse.js.
- Analitik: Plausible (paralı), Umami (self-host bedava), Cloudflare Web Analytics (free), Google Analytics 4 (free + privacy concerns).
- Ödeme: Stripe Checkout, Lemon Squeezy, Gumroad — "buy now" butonu HTML'inde tek satır.
- Bildirim/E-posta: ConvertKit free, Buttondown, EmailOctopus.
<!-- Giscus yorum sistemi: GitHub Discussions tabanlı, statik sitede çalışır -->
<script
src="https://giscus.app/client.js"
data-repo="KULLANICI/REPO"
data-repo-id="R_xxx"
data-category="General"
data-category-id="DIC_xxx"
data-mapping="pathname"
data-strict="0"
data-reactions-enabled="1"
data-emit-metadata="0"
data-input-position="bottom"
data-theme="preferred_color_scheme"
data-lang="tr"
crossorigin="anonymous"
async>
</script>
<!-- Pagefind ile istemci-tarafı arama -->
<link href="/pagefind/pagefind-ui.css" rel="stylesheet">
<div id="search"></div>
<script src="/pagefind/pagefind-ui.js"></script>
<script>
window.addEventListener('DOMContentLoaded', () => {
new PagefindUI({ element: '#search', showSubResults: true });
});
</script>
Deploy Pipeline: GitHub Actions ile Otomatikleştirme
Manuel git push ile çalışan platformlarda (GitHub Pages, Cloudflare Pages, Netlify, Vercel) zaten otomatik deploy yapılır. Ama özel ihtiyaçlar — örneğin build sonucu ayrı bir sunucuya rsync, S3'e yükle, çoklu hedefte deploy — için GitHub Actions devreye girer. GitHub Actions CI/CD rehberimiz akışı genişletiyor.
#.github/workflows/deploy.yml — Hugo build + GitHub Pages deploy
name: Build and Deploy
on:
push:
branches: [main]
permissions:
contents: read
pages: write
id-token: write
concurrency:
group: pages
cancel-in-progress: false
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with: { submodules: recursive, fetch-depth: 0 }
- name: Setup Hugo
uses: peaceiris/actions-hugo@v3
with: { hugo-version: '0.130.0', extended: true }
- run: hugo --minify --gc
- uses: actions/upload-pages-artifact@v3
with: { path:./public }
deploy:
needs: build
runs-on: ubuntu-latest
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- id: deployment
uses: actions/deploy-pages@v4
Headers, Yönlendirme ve Cache Kontrolü
Bedava sağlayıcılar genelde varsayılan güvenli header'lar verir; ama özel HTTP başlıkları, redirect'ler ve cache yönergeleri eklemek için her platformun kendi konfigürasyon dosyası vardır. Cloudflare Pages için _headers ve _redirects dosyaları, Netlify için aynı isimde, Vercel için vercel.json, GitHub Pages için _config.yml + Jekyll ya da workflow.
# _headers — Cloudflare Pages / Netlify
/*
X-Frame-Options: DENY
X-Content-Type-Options: nosniff
Referrer-Policy: strict-origin-when-cross-origin
Permissions-Policy: geolocation=(), camera=(), microphone=()
Strict-Transport-Security: max-age=63072000; includeSubDomains; preload
/assets/*
Cache-Control: public, max-age=31536000, immutable
/*.html
Cache-Control: public, max-age=0, must-revalidate
# _redirects — eski URL'leri 301'le yenisine yönlendir
/eski-blog/* /blog/:splat 301
/old-page /yeni-sayfa 301!
# Wildcard SPA fallback (gerekiyorsa)
/* /index.html 200
Doğru cache stratejisi: hash'li asset dosyalarına (main.a3f2.js) immutable ile 1 yıl, HTML dosyalarına revalidate ile 0 saniye. Bu kombinasyon repeat visitor'ların sayfayı 0 byte indirme ile açmasını sağlar — LCP 200-300 ms aralığına düşer.
Güvenlik: Bedava Sitenin Bile Sertleştirmesi Gerek
Statik site dinamiğe göre saldırı yüzeyi minik olsa da boş geçilebilir değil. CSP (Content Security Policy), yanlış yapılandırılmış üçüncü taraf script'lerin XSS riski oluşturmasını engeller. XSS ve CSP yazımız derinlemesine anlatıyor.
# _headers — sıkı CSP örneği
/*
Content-Security-Policy: default-src 'self'; script-src 'self' https://giscus.app; style-src 'self' 'unsafe-inline'; img-src 'self' data: https:; font-src 'self' data:; connect-src 'self' https://api.example.com; frame-src https://giscus.app; base-uri 'self'; form-action 'self'
X-XSS-Protection: 1; mode=block
Permissions-Policy: interest-cohort=()
DDoS ve bot trafiği için Cloudflare'in proxy modu otomatik temel koruma sağlar. DDoS koruma yazımız daha derin önerileri içeriyor. Ayrıca form spam'ine karşı honeypot alanı + reCAPTCHA v3 / hCaptcha eklemek ücretsiz katmanda standart pratiktir.
SEO: Statik Olmak Avantaja Dönüşür
Statik HTML sayfalar bot'lar tarafından mükemmel parse edilir; SSR/CSR karmaşıklığı yoktur. Bu, doğru başlık, meta, sitemap ve schema markup ile düşük maliyetli ama yüksek görünürlük sağlar. Teknik SEO kontrol listemiz standart kontrol noktalarını veriyor.
<!-- Statik bir HTML sayfasının SEO temeli -->
<!doctype html>
<html lang="tr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Sayfa Başlığı (60 karakter altı) — Site Adı</title>
<meta name="description" content="160 karakter altı, anahtar kelime + değer önermesi">
<link rel="canonical" href="https://ornek.com/sayfa-yolu/">
<!-- Open Graph -->
<meta property="og:title" content="Sayfa Başlığı">
<meta property="og:description" content="Açıklama">
<meta property="og:image" content="https://ornek.com/og-image.jpg">
<meta property="og:type" content="website">
<meta property="og:url" content="https://ornek.com/sayfa-yolu/">
<!-- Twitter Card -->
<meta name="twitter:card" content="summary_large_image">
<!-- Schema.org JSON-LD -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "WebSite",
"name": "Site Adı",
"url": "https://ornek.com",
"potentialAction": {
"@type": "SearchAction",
"target": "https://ornek.com/?q={search_term_string}",
"query-input": "required name=search_term_string"
}
}
</script>
</head>
Sitemap.xml ve robots.txt dosyalarını otomatik üretmeyi unutma. Hugo, Astro, Eleventy gibi modern SSG'ler bu dosyaları build sırasında otomatik üretir; build çıktına bakıp public/sitemap.xml var mı kontrol et. Arama motoru ve SEO rehberimiz indeksleme akışını detaylandırıyor.
Yedekleme ve Migrasyon: Bağımlılık Riskini Azaltma
Her ücretsiz sağlayıcı bir gün kapanabilir, fiyat politikasını değiştirebilir veya hesabını soğukça askıya alabilir. Tüm statik HTML sitenin bir Git deposunda yaşaması bu riski büyük oranda eritir — repo yerelinde + 2-3 farklı remote'ta varsa, sağlayıcı değişimi yarım saatlik bir iş.
- Tek kaynak Git deposu: HTML, CSS, JS, görsel, içerik (Markdown) hepsi versiyonlu.
- Çoklu remote:
git remote add github+git remote add gitlab+ isteğe bağlı kendi sunucun.git push --allhepsine itelersin. - Build artifact'leri yedekleme: Aylık bir
tar.gzile S3 / Backblaze B2'ye otomatik yükleme. - DNS kayıtlarının export'u: Cloudflare/Hetzner DNS'inde "export zone file" ile düzenli yedek.
- Sertifika yedekleme: Let's Encrypt için gerek yok (kolayca yeniden alırsın); ücretli sertifika kullanıyorsan private key + chain'i offline sakla.
Veritabanı yedekleme stratejilerini geniş bir bakışla anlatan 3-2-1 yedekleme yazımıza da göz atabilirsin — statik bir site için fazla gibi gelse de, içerik kaynağı bir CMS olduğunda bu pratikler kritikleşir.
Yaygın Hatalar ve Sınır Tuzakları
- "Sınırsız" denilen bant genişliği gerçekten sınırsız değil: Çoğu sağlayıcı fair-use politikası ile aşırı trafik durumunda hesabı askıya alır. CPU kullanımı, eşzamanlı bağlantı, file descriptor sayısı gibi gizli limitler vardır.
- Custom domain'de SSL sertifikası 24 saatte gelmeyebilir: DNS propagation tamamlanmadan platformlar Let's Encrypt sertifikasını isteyemez. Önce DNS'i bağla, sonra SSL'i etkinleştirme tuşuna bas.
- Build dakikası kotası: Netlify free 300 dk, Vercel 6.000 dk, Cloudflare Pages 500 build/ay. Her PR push'ta build koşan bir mono-repo bu kotayı şaşırtıcı hızlı tüketir.
- Ticari kullanım yasağı: Vercel Hobby planı sıkça gözden kaçar; küçük bir e-ticaret bile TOS ihlali. Plan koşullarını oku.
- Subdomain'in fragile olması:
kullanici.github.iogibi sağlayıcı subdomain'leri ileride taşıma yapacaksan SEO link juice'ını kaybedersin. Daha ilk günden custom domain bağlamak akıllıca. - Eski ücretsiz cPanel paneli reklam ekler: Her servis değil — InfinityFree, AwardSpace ad-free; ama bazı düşük profilli sağlayıcılar HTML sayfalarına reklam enjekte eder. Test et.
- HTTPS karışık içeriği (mixed content): HTTP üzerinden script/img yüklemek modern tarayıcılarda blok edilir. Tüm asset'lerin HTTPS olduğundan emin ol.
- 404 ve sitemap eksikliği: Custom 404 sayfası ve düzenli sitemap olmadan SEO performansın düşer.
Sınır Test Etme: Limit Aşıldığında Ne Oluyor?
Bedava planlar limitleri aştığında üç tipik davranış görürsün: (1) throttle — istek hız kesilir, sayfa yavaşlar; (2) soft block — siteden 429 / 503 dönmeye başlar, hesap dashboard'unda uyarı çıkar; (3) plan upgrade prompt — sağlayıcı paralı plana geçmeni teklif eder. Hard suspend nadiren olur ama TOS ihlali yapıyorsan (örneğin warez, spam) anında olabilir.
# Bant genişliği kullanımını izleme — sitenin response header'larından
curl -I https://benim-sitem.pages.dev/
# CF-Cache-Status: HIT -> origin'e gitmedi, kotanı az tüketir
# Cloudflare Analytics API (free plan'da bile sınırlı veri)
curl -H "Authorization: Bearer $CF_TOKEN" \
"https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/pages/projects/$PROJECT/deployments"
# Netlify usage
netlify api listSiteUsage --data='{"site_id":"xxx"}'
# Vercel usage (CLI)
vercel inspect --logs
Deneme Sürecinde Bir Sayfa: Sıfırdan Yayında 10 Dakika
Soyut anlatımı kapatan somut bir örnek. Hedef: kişisel bir CV sayfasını ücretsiz Cloudflare Pages üzerinde yayınlamak.
# 1. Yerel klasör
mkdir cv-sitem && cd cv-sitem
# 2. index.html oluştur
cat > index.html <<'EOF'
<!doctype html>
<html lang="tr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Ad Soyad — CV</title>
<meta name="description" content="Yazılım geliştirici Ad Soyad'ın özgeçmişi.">
<link rel="stylesheet" href="style.css">
</head>
<body>
<main>
<h1>Ad Soyad</h1>
<p>Senior Backend Developer</p>
<h2>Deneyim</h2>
<ul>
<li><strong>2023-...</strong> — XYZ AŞ, Senior Backend</li>
<li><strong>2021-2023</strong> — ABC Yazılım, Backend</li>
</ul>
</main>
</body>
</html>
EOF
# 3. Basit bir CSS
cat > style.css <<'EOF'
body { font-family: system-ui, sans-serif; max-width: 720px; margin: 2rem auto; line-height: 1.6; padding: 0 1rem; }
h1 { font-size: 2rem; margin-bottom: 0.25rem; }
h2 { margin-top: 2rem; border-bottom: 1px solid #ddd; padding-bottom: 0.25rem; }
EOF
# 4. Git deposu + GitHub'a push
git init && git add. && git commit -m 'cv siteme baslangic'
git branch -M main
git remote add origin git@github.com:KULLANICI/cv-sitem.git
git push -u origin main
# 5. Cloudflare dashboard -> Pages -> Connect to Git -> repo seç
# Build command boş, output./
# Deploy. ~30 saniye sonra cv-sitem.pages.dev yayında.
# 6. Custom domain bağla:
# Pages projesi -> Custom Domains -> Set up domain -> cv.adsoyad.com
# Cloudflare DNS'inde otomatik CNAME oluşturulur, SSL otomatik.
Bu akış 10 dakikadan kısa sürer ve sonuçta global CDN'de, otomatik HTTPS'li, sürüm kontrollü, 0 TL maliyetli bir profesyonel CV sayfası elde edersin.
İleri Senaryo: Headless CMS + Statik Site
Yazılım geliştirici olmayan içerik üreticileri Markdown'da rahat etmez. Çözüm: headless CMS kullanmak. İçerik bir admin paneli üzerinden eklenir, build hook tetiklenir, statik site otomatik yeniden derlenir. Popüler ücretsiz/freemium seçenekler:
- Decap CMS (eski Netlify CMS): Açık kaynak, GitHub OAuth, dosyaları doğrudan Git'e yazar.
- Sanity: Yapısal içerik için en güçlü, free tier 3 kullanıcı + 10K doküman.
- Strapi (self-host): Tamamen ücretsiz, kendi sunucuna kurarsın.
- Contentful: Ücretsiz Community plan: 25K kayıt, 5 user, 2 dil.
- Storyblok: Görsel editör, 1.000 entry free.
- Tina CMS: Git tabanlı, real-time preview.
# admin/config.yml — Decap CMS minimal kurulum
backend:
name: github
repo: KULLANICI/blog-sitesi
branch: main
media_folder: "static/img"
public_folder: "/img"
collections:
- name: "blog"
label: "Blog Yazıları"
folder: "content/posts"
create: true
slug: "{{year}}-{{month}}-{{day}}-{{slug}}"
fields:
- { label: "Başlık", name: "title", widget: "string" }
- { label: "Yayın Tarihi", name: "date", widget: "datetime" }
- { label: "Açıklama", name: "description", widget: "text" }
- { label: "Görsel", name: "image", widget: "image", required: false }
- { label: "İçerik", name: "body", widget: "markdown" }
Ücretsiz mi, Düşük Maliyetli mi? Geçiş Noktası
Bedava planın yetersiz kaldığı anı tanımak önemli. İşaretler:
- Aylık ziyaretçi sayın 50.000'i geçti, build dakikan kotayı zorluyor.
- Form spam'i artmasıyla form provider free planı taşıyor.
- Müşteri destek SLA'sı zorunlu, free tier yanıt vermeyi 72 saat sürüyor.
- Site ticari satış yapıyor, TOS izin vermiyor.
- B2B müşterileri uptime SLA, audit log, IP whitelist gibi özellikler talep ediyor.
Yıllık 60-200 USD arası bir Pro plan (Vercel, Netlify, Cloudflare) genelde bu işaretlerin tamamını çözer. Daha büyük ölçekte VPS + kendi statik dosya servisi (Nginx + Cloudflare CDN) en ucuz seçenek olabilir; VPS rehberimiz ve Nginx yapılandırma yazımız bu yola hazırlık.
Türkiye'deki Yerel Sağlayıcılar: Ücretsiz Manzara
Yurt içinde de ücretsiz katmanı olan veya çok düşük fiyatla benzer hizmet sunan sağlayıcılar var. Yerel CDN/PoP'ları olduğu için Türkiye'den yapılan ölçümlerde gecikme küresellere yakındır. Bu liste objektif karşılaştırma içindir, tavsiye değildir:
- Natro, Turhost, İsimTescil, GUZELHOSTING, Hosting.com.tr: Genelde paralı; bazıları öğrenci/öğretmen kampanyalarıyla 1 yıl bedava verebiliyor.
- Bunların ücretsiz katmanları çoğunlukla "deneme" niteliğinde — uluslararası saf statik platformların kalıcı bedava katmanlarına denk gelmiyor.
- Yerel destek + Türkçe panel + KDV'li fatura ihtiyacın varsa paralı plan rasyonel bir seçim.
Genel kurum kuralı: kişisel/öğrenci/portfolyo için uluslararası modern platformlar; ticari + Türkçe destek + faturalı altyapı için yerel paralı sağlayıcılar.
Erişilebilirlik ve Çoklu Dil
Statik bir HTML site bile WCAG 2.2 AA uyumlu yazılmalı. Bu hem etik hem de SEO için belirleyici. Doğru semantik HTML, alt metin, kontrast oranı, klavye navigasyonu, ARIA etiketleri olmadan profesyonel sayılmaz.
# axe-core CLI ile otomatik a11y denetimi
npm install -g @axe-core/cli
axe https://benim-sitem.pages.dev --tags wcag2a,wcag2aa --exit
# Pa11y ile çoklu sayfa
npm install -g pa11y
pa11y https://benim-sitem.pages.dev/iletisim/ --standard WCAG2AA
Çoklu dil için en sade yaklaşım /tr/... + /en/... dizin yapısıdır. Her dilin <link rel="alternate" hreflang="..."> etiketleriyle ilişkilendirilmesi şart. JSON-LD'de inLanguage alanını eklemek de bonus.
İzleme: Bedava Sitenin Sağlığını Anlamak
Sahip olduğun statik site sessizce çalışıyor olsa da downtime, sertifika expire, performans regresyonu gibi sorunlar fark edilmeden büyür. Ücretsiz izleme araçları:
- UptimeRobot: 50 monitor, 5 dakikalık check intervali, free.
- Better Stack (Better Uptime): 10 monitor, 30 saniye intervali, free tier sınırlı ama kullanışlı.
- Cloudflare Notifications: SSL expiry + downtime alert built-in.
- Healthchecks.io: 20 check, ücretsiz dead man's switch.
- Sentry: 5K event/ay free, JS hatalarını yakalamak için.
- Plausible / Umami: GDPR-friendly analitik.
Lisans, Telif ve Yasal Uyarılar
Ücretsiz sağlayıcılar genelde içeriğin sahibinin sen olduğunu kabul eder; ama TOS'u okumadan illegal/spam/copyright ihlalli içerik yayınlamak hesabı kalıcı askıya alır. Ayrıca KVKK/GDPR uyumluluğu için çerez uyarısı, gizlilik politikası, kullanım koşulları sayfaları statik sitelerde de zorunluluk.
- Üçüncü taraf font ve görselleri lisanslı kullan (Google Fonts, Unsplash, Pexels — atıf gerektirebilir).
- Açık kaynak şablonlar MIT/Apache/GPL lisans şartlarını korumalı.
- KVKK kapsamında ziyaretçi IP'si bile kişisel veri sayılır — analitik aracı seçerken anonimleştirme seçeneklerini etkinleştir.
- Türkiye'de ticari amaçlı sitelerde 5651 sayılı kanun kapsamında MERSİS/iletişim bilgilerinin yer alması zorunludur.
Karşılaştırmalı Hızlı Karar Akışı
Tüm bu seçeneklerden bunalmamak için 30 saniyelik bir karar akışı:
- Sadece bir HTML klasörüm var, hesap açmaya üşeniyorum → Tiiny.host veya Netlify Drop.
- GitHub'a alışkınım, kişisel proje → GitHub Pages.
- En düşük gecikme + sınırsız bant genişliği iddiası önemli → Cloudflare Pages.
- Form, identity, PR preview gibi geliştirici ekstraları gerekiyor → Netlify.
- Next.js / SvelteKit / Nuxt projesi → Vercel.
- Çok dilli belgeleme/wiki sitesi → Cloudflare Pages + Astro/Docusaurus.
- PHP + MySQL ihtiyacı, küçük dinamik script → InfinityFree veya AwardSpace.
- İleride ölçeklenecek ticari proje → ücretsiz başla, ay 50 USD ödemeye hazır ol; gerekirse VPS'e geçirme planını yaz.
Hızlı SSS
Ücretsiz HTML hosting tamamen reklamsız mı?
Modern statik platformların hepsi (GitHub Pages, Cloudflare Pages, Netlify, Vercel, Render, Firebase) reklamsızdır. Sadece bazı eski tarz cPanel hostingleri kendi reklamını veya sponsor yazısını koyabilir; InfinityFree ve AwardSpace bunu yapmaz, ama 000WebHost gibi sağlayıcıların geçmişte reklam koyduğu dönemler oldu. Sözleşmeyi oku.
"Ücretsiz" SSL ile "paralı" SSL arasında güvenlik farkı var mı?
Hayır. Let's Encrypt sertifikaları paralı DV (Domain Validated) sertifikalarla aynı kriptografik güveni sunar. Fark yalnızca OV (Organization Validated) ve EV (Extended Validation) seviyelerinde başlar; bunlar tarayıcıda yeşil bar göstermez artık ve tipik blog/portfolio için anlamsızdır. SSL sertifikası rehberimiz seçimi açıklıyor.
Custom domain almadan da yayınlayabilir miyim?
Evet. Hepsi kullanici-adi.platform.app gibi ücretsiz subdomain verir. Custom domain isteğe bağlıdır; ama profesyonel bir görüntü için yıllık 60-300 TL'lik bir .com almak iyi yatırımdır. Domain rehberimiz alan adı seçimini anlatıyor.
Statik site SEO'da dezavantajlı mı?
Tam tersi. Google ve diğer arama motorları statik HTML'i mükemmel parse eder. Statik siteler genelde JavaScript-heavy SPA'lardan daha iyi sıralanır çünkü Core Web Vitals değerleri otomatik olarak iyidir. Teknik SEO yazımız bu konuyu ele alıyor.
Bedava plandan paralıya geçince taşınma zor olur mu?
Eğer Git tabanlı bir akış kullanıyorsan, taşınma 30 dakikalık bir iştir: yeni sağlayıcıyı seçer, repoyu bağlar, DNS kayıtlarını yenisine yönlendirirsin. Domain bağımsızlığı korunur — kimse SEO link juice'unu kaybetmez.
Özet ve Sonraki Adımlar
2026'da ücretsiz HTML site barındırma artık "yetersizden idare et" değil, çoğu kişisel ve KOBİ projesi için üretim kalitesinde tek seçenek. Modern statik platformlar (Cloudflare Pages, Netlify, Vercel, GitHub Pages) küresel CDN, otomatik HTTPS, Git tabanlı dağıtım sunuyor — bunu 5 yıl önce yıllık binlerce dolarlık enterprise CDN'lerle alabiliyordun. Karar verirken kendi senaryona en uygun olanı seç, custom domain'i ilk günden bağla, build pipeline'ı otomatize et ve fair-use limitlerine dikkat et.
- İlk gün: provider seç + repo aç + ilk deploy.
- 2. gün: custom domain + free SSL.
- 1. hafta: SEO meta, sitemap, analitik kurulum.
- 1. ay: performans audit (Lighthouse, WebPageTest), CSP header, izleme (UptimeRobot).
- 3. ay: trafik & build kotanı izle, gerektiğinde paralı plana yumuşak geçiş planla.
Kaynaklar
- GitHub Pages docs
- Cloudflare Pages docs
- Netlify docs
- Vercel docs
- GitLab Pages docs
- Firebase Hosting docs
- Render Static Sites
- Surge.sh docs
- InfinityFree
- AwardSpace free hosting
- Let's Encrypt
- web.dev — Google web standards
- SSL Labs Test
- PageSpeed Insights
- Decap CMS
- Giscus yorum sistemi
- Pagefind static search
- Hugo SSG
- Astro
- Eleventy (11ty)
İlgili Yazılar
- Hosting Nedir? Web Hosting Türleri ve Fiyatları
- DNS Nedir? Ayarları, Değiştirme ve En İyi DNS Sunucuları
- Let's Encrypt ile Ücretsiz SSL Kurulumu
- Nginx Yapılandırma: Reverse Proxy, Cache ve Rate Limit
- Sayfa Hızı ve Core Web Vitals 2026
- Teknik SEO Kontrol Listesi 2026
- GitHub Actions ile CI/CD
- VPS Nedir? VPS Kiralama Rehberi
Ücretsiz HTML hosting üzerinde başlayan projenizi büyürken doğru CDN + DNS + güvenlik mimarisine taşımak için ekibimizle iletişime geçin