S3 kovasından statik web sitesi yayınlama ve kendi alan adınızı bağlama (ücretsiz SSL)
1. Ne yapabilir, ne yapamaz?
Statik web sitesi, kovadaki dosyaları herkese açık bir web adresinden sunar. Sunucu kurmanız, PHP ya da veritabanı yönetmeniz gerekmez.
| Var | Yok |
|---|---|
Giriş dosyası (varsayılan index.html, değiştirilebilir), alt klasörlerde de aynı dosya |
PHP, Node.js gibi sunucu tarafı kod |
| Tek sayfa uygulama (SPA) yönlendirmesi: alt yollar ve sayfa yenileme giriş dosyasını açar | Sunucu tarafı yönlendirme kuralları (redirect listesi) |
İsteğe bağlı özel hata sayfası (ör. 404.html) |
Veritabanı, form işleme (formlar için dış servis kullanın) |
| Kendi alan adınız + otomatik ücretsiz SSL | WordPress gibi dinamik siteler |
| HTTP'den HTTPS'ye otomatik yönlendirme | Sayfa bazında parola koruması |
Nesne Depolama'nın genel anlatımı: Nesne Depolama (S3) rehberi.
Web sitesini açtığınızda o kovadaki tüm dosyalar, adresini bilen herkes tarafından görüntülenebilir. Siteye özel ayrı bir kova kullanın; yedeklerinizi ve özel dosyalarınızı asla web sitesi açık bir kovaya koymayın.
2. Başlamadan önce
- Site için yeni bir kova açın (ör.
firma-site): Kovalar > Yeni kova. - Sitenin dosyalarını kovanın köküne yükleyin. Ana sayfa kökte
index.htmlolmalıdır.- Az sayıda dosya için panelde Dosya yöneticisi > Dosya yükle (klasörleri sürükleyip bırakabilirsiniz).
- Çok dosya için rclone ya da aws-cli:
rclone sync ./public gyro:firma-site --progress. Ayrıntılar: aws-cli ve rclone ile bağlanma.
aws-cli ve rclone dosya türünü (Content-Type) uzantıdan kendisi belirler; .html sayfa, .css stil olarak sunulur. Elle yazılmış bir yükleme aracı kullanıyorsanız dosya türünü doğru gönderdiğinizden emin olun.
3. Adım adım: web sitesini açın
- Nesne Depolama hizmetinizde Yönetim sekmesinde Statik web sitesi'ni açın. Her kova durumuyla (Açık / Kapalı) listelenir.
- Siteyi yayınlayacağınız kovanın satırında Web sitesini aç'a basın.
- Açılan pencerede kuralları okuyun ve ayarları doldurun (hepsi isteğe bağlı):
- Giriş dosyası adı (index document): boş bırakırsanız
index.html. Siteniz başka bir dosyayla açılıyorsa (ör.app.html) yalnız dosya adını yazın; klasör yolu yazılmaz. - Alt bağlantıları giriş dosyasına yönlendir (SPA): React, Vue, Angular gibi tek sayfa uygulamalarda açın (ayrıntı Bölüm 3.1).
- Hata (404) sayfası (isteğe bağlı): ör.
404.htmlya dahatalar/404.html.
- Giriş dosyası adı (index document): boş bırakırsanız
- Kötüye kullanım kurallarını okudum ve kabul ediyorum kutusunu işaretleyin ve penceredeki Web sitesini aç'a basın. "Web sitesi açıldı: …" bildirimi sitenin adresini gösterir.
Siteniz şu biçimde bir adreste yayına girer:
https://<kova-adı>-<hizmet kodu>.web.gyro-s3.com/
Örnek: https://firma-site-k7f2.web.gyro-s3.com/. Hizmet kodu hizmetinize özel, değişmeyen kısa bir koddur; tam adres Statik web sitesi ve Kovalar sayfalarında görünür.
Nasıl çalışır:
https://…/köktekiindex.html'i,https://…/blog/iseblog/index.html'i açar. Sonunda/olmayan…/blogadresi…/blog/'a yönlendirilir.- Olmayan bir sayfada hata sayfanız (ya da varsayılan "bulunamadı" sayfası) 404 koduyla gösterilir. (SPA açıksa farklıdır, Bölüm 3.1.)
http://ile gelen ziyaretçiler kendiliğindenhttps://'e yönlendirilir.
Ayarları sonradan değiştirmek için web sitesi açık kovanın satırında Ayarlar'a basın; değişiklik hemen yayına girer. Siteyi kapatmak için aynı sayfada Kapat'a basın. Dosyalarınız ve ayarlarınız silinmez, yalnız web erişimi kapanır; yeniden açtığınızda aynı ayarlarla gelir.
3.1 Tek sayfa uygulama (SPA) yönlendirmesi
React Router, Vue Router, Angular gibi uygulamalarda /panel/ayarlar gibi adresler aslında kovada bir dosya değildir; uygulama bu yolu tarayıcıda kendisi çizer. SPA kapalıyken bu adrese doğrudan gelen ya da sayfayı yenileyen ziyaretçi 404 görür.
Alt bağlantıları giriş dosyasına yönlendir (SPA) anahtarını açtığınızda:
- Kovada bulunmayan her yol (ör.
/panel/ayarlar,/urun/42) giriş dosyasını (ör.index.html) 200 koduyla döndürür; uygulamanız doğru sayfayı açar. - Gerçek dosyalar (ör.
/assets/app.js,/logo.png) olduğu gibi sunulur. - Bu modda 404 sayfası kullanılmaz; "sayfa bulunamadı" ekranını uygulamanız göstermelidir. Anahtarı kapattığınızda kayıtlı 404 sayfanız yeniden devreye girer.
- Kovada olmayan bir dosya istendiğinde de (ör. silinmiş bir
.js) giriş dosyası döner; derlemeden sonra tüm dosyaları birlikte yükleyin (rclone sync).
Vite, Create React App, Vue CLI ve Angular derlemesinde çıktı klasörünü (dist/ ya da build/) kovanın köküne yükleyin; giriş dosyası index.html olarak kalabilir.
4. Kendi alan adınızı bağlayın
4.1 DNS kaydını ekleyin
Alan adınızın DNS yönetiminde (alan adını aldığınız firma ya da kullandığınız DNS hizmeti):
- Alt alan adı için (önerilen), ör.
www.firma.com: bir CNAME kaydı ekleyin. Ad:www, hedef: kovanın web adresi (ör.firma-site-k7f2.web.gyro-s3.com). - Kök alan adı için, ör.
firma.com(CNAME kullanılamaz): iki kayıt ekleyin:- A kaydı:
firma.com→ panelin Özel alan adı sayfasında gösterdiği IP adresi. - TXT kaydı: ad
_gyro-s3.firma.com, değerbucket=<web adresindeki ad>(ör.bucket=firma-site-k7f2).
- A kaydı:
DNS'inizde proxy/CDN özelliği varsa (ör. Cloudflare'de turuncu bulut) kaydı yalnız DNS moduna (gri bulut) alın. Proxy açıkken doğrulama yapılamaz ve SSL sertifikası alınamaz.
4.2 Panelde bağlayın
- Yönetim sekmesinde Özel alan adı'nı açın.
- Alan adı bağla'ya basın.
- Kova (web sitesi açık olmalı) listesinden kovayı seçin, Alan adı kutusuna alan adınızı yazın. Pencere bu kova için eklemeniz gereken kayıtları gösterir.
- DNS'i kontrol et'e basın. "DNS doğru; bağlayabilirsiniz." mesajını görünce Doğrula ve bağla'ya basın.
- Durum önce İşleniyor (birkaç dakika), sonra Aktif (SSL hazır) olur. SSL bitiş sütununda sertifikanın bitiş tarihi görünür; sertifika kendiliğinden yenilenir.
Kurallar: bir hizmette en çok 5 özel alan adı bağlanabilir; alan adı en çok 63 karakter olabilir. Web sitesini kapatırsanız bağlı alan adı da yayından çıkar.
5. Siteyi güncelleme
Dosyaları yeniden yükleyin; değişiklik hemen yayına girer. Komut satırından tüm siteyi tek komutla eşitleyebilirsiniz:
rclone sync ./public gyro:firma-site --progress
rclone sync, kovada olup yerelde olmayan dosyaları siler. Site kovası için doğru davranış budur; ama komutu yanlış kovaya çalıştırmamaya dikkat edin. Bu hizmette sürümleme yoktur.
Kovanın adını değiştirirseniz web adresi de değişir; eski adres 40 gün yönlendirilir. CNAME kaydınızı bu süre içinde yeni adrese güncelleyin: S3 kova adı nasıl değiştirilir?
6. Sorun giderme
| Panel mesajı ya da belirti | Anlamı ve çözüm |
|---|---|
| "Önce bu kova için statik web sitesini açın." | Alan adı yalnız web sitesi açık kovaya bağlanır; Bölüm 3'ü uygulayın. |
| "DNS kaydı bulunamadı. Kayıt eklendiyse yayılması birkaç dakika sürebilir." | Birkaç dakika bekleyip DNS'i kontrol et'e yeniden basın. |
| "CNAME kaydı … adresini gösteriyor, … olmalı." | CNAME hedefi yanlış; panelin yazdığı adresle düzeltin. |
| "Alan adı … adresine çıkıyor." | Kayıt proxy modunda; yalnız DNS yapın ya da CNAME kullanın. |
| "A kaydı doğru; TXT kaydı eksik: …" | Kök alan adında TXT kaydını da ekleyin. |
| "Bu alan adı başka bir kovaya bağlı." | Önce diğer kovadan Kaldır'ın. |
| "Gyro alan adları özel alan adı olarak kullanılamaz." | Kendi alan adınızı kullanın. |
| Durum uzun süre Sertifika hazırlanıyor | DNS yeni değişti ya da proxy açık; birkaç dakika bekleyin, proxy'yi kapatın. |
| Sayfa yerine dosya iniyor ya da stil yüklenmiyor | Dosya türü (Content-Type) yanlış gönderilmiş; dosyayı aws-cli ya da rclone ile yeniden yükleyin. |
SPA'da /panel/... gibi adresler ya da sayfa yenileme 404 veriyor |
Ayarlar'da Alt bağlantıları giriş dosyasına yönlendir (SPA) anahtarını açın. |
| "Geçersiz giriş dosyası adı." | Yalnız dosya adı yazın (ör. index.html, app.html); / ve .. kullanılamaz. |
| Tarayıcıdaki uygulama kovadan veri okuyamıyor (CORS hatası) | Kovaya CORS kuralı ekleyin: Yönetim > CORS (bkz. Nesne Depolama rehberi, Bölüm 8). |
| Site açılıyor ama yavaş | Bu ayın trafik hakkı dolmuş ve hız sınırlanmış olabilir: Trafik hakkı, hız sınırı ve ek trafik paketi. |
Sitenizi Gyro Uptime İzleme ile izleyebilirsiniz; site açılmazsa ya da SSL sertifikasının süresi yaklaşırsa e-posta, SMS ya da Telegram ile haber alırsınız. Gyro müşterilerine 10 izleyicilik ücretsiz paket var.
7. Sık sorulan sorular
SSL sertifikası ücretli mi?
Hayır. Hem …web.gyro-s3.com adresi hem de bağladığınız alan adı için SSL ücretsizdir ve kendiliğinden yenilenir.
WordPress sitemi buraya taşıyabilir miyim?
WordPress PHP ve veritabanı gerektirdiği için doğrudan çalışmaz. Statik HTML'e dönüştürülmüş bir kopyasını yayınlayabilirsiniz; dinamik site için hosting paketleri daha uygundur.
Site trafiği ücretli mi?
Ziyaretçilerin indirdiği veri, paketinizin aylık dahil trafiğinden düşer. Hak dolarsa site kapanmaz, yalnız hızı sınırlanır; ay sonunda aşım faturası çıkmaz.
Kök alan adım ile www aynı anda çalışabilir mi?
Evet. İkisini ayrı ayrı bağlayın: www için CNAME, kök alan adı için A + TXT. Bir hizmette en çok 5 alan adı bağlanabilir.
Bir kovada birden çok site yayınlayabilir miyim?
Her kova tek bir sitedir. Ayrı siteler için ayrı kovalar açın; kova sayınız pakete göre değişir (S3 Mini 250 GB'de 5).
React / Vue / Angular uygulamamı yayınlayabilir miyim?
Evet. Derleme çıktısını yükleyin ve Alt bağlantıları giriş dosyasına yönlendir (SPA) anahtarını açın; alt adresler ve sayfa yenileme 404 vermez. API'ye bağlanan kısım için uygulamanızın kendi sunucusu ya da dış servis gerekir.
Ana sayfam index.html değil, değiştirebilir miyim?
Evet. Giriş dosyası adı alanına dosyanın adını yazın (ör. app.html). Kök adres ve her klasör bu adı kullanır.
Ayarları komut satırından ya da Terraform ile yönetebilir miyim?
Evet: API PUT /cloud/storage/{id}/buckets/{kova}/website, CLI gyro storage website set <hizmet> <kova> --spa --accept, Terraform gyro_storage_bucket_website. Ayrıntılar: geliştirici belgeleri.
Sitemi yayından nasıl kaldırırım?
Statik web sitesi sayfasında Kapat'a basın. Dosyalar kovada kalır.
Sıradaki adım
- İlk izleyicinizi kurun: Uptime İzleme: ilk izleyicinizi kurun.
- Henüz Nesne Depolama hizmetiniz yok mu? S3 Mini 250 GB ayda 3,49 €'dan başlar: Nesne Depolama paketleri
Geri bildiriminiz için teşekkürler!