{"id":4133,"date":"2026-01-04T15:07:13","date_gmt":"2026-01-04T12:07:13","guid":{"rendered":"https:\/\/www.dchost.com\/blog\/object-storagei-web-site-origini-olarak-kullanmak-s3-minio-ve-cdn-ile-tamamen-statik-hosting-mimarisi\/"},"modified":"2026-01-04T15:07:13","modified_gmt":"2026-01-04T12:07:13","slug":"object-storagei-web-site-origini-olarak-kullanmak-s3-minio-ve-cdn-ile-tamamen-statik-hosting-mimarisi","status":"publish","type":"post","link":"https:\/\/www.dchost.com\/blog\/object-storagei-web-site-origini-olarak-kullanmak-s3-minio-ve-cdn-ile-tamamen-statik-hosting-mimarisi\/","title":{"rendered":"Object Storage\u2019\u0131 Web Site Origin\u2019i Olarak Kullanmak: S3, MinIO ve CDN ile Tamamen Statik Hosting Mimarisi"},"content":{"rendered":"<div class=\"dchost-blog-content-wrapper\"><p>Son birka\u00e7 y\u0131lda modern frontend framework\u2019ler, statik site jenerat\u00f6rleri ve CDN\u2019ler sayesinde web uygulamas\u0131 mimarisi ciddi \u015fekilde de\u011fi\u015fti. Art\u0131k her k\u00fc\u00e7\u00fck proje i\u00e7in mutlaka bir web sunucusu, PHP\/FPM veya Node.js arka plan\u0131 kurmak zorunda de\u011filsiniz. Bir\u00e7ok senaryoda; derlenmi\u015f HTML, CSS, JS ve medya dosyalar\u0131n\u0131 <strong>Object Storage<\/strong> \u00fczerinde tutup, bu depoyu do\u011frudan web site <strong>origin<\/strong>\u2019i olarak kullanmak m\u00fcmk\u00fcn. \u00dcst\u00fcne bir de CDN katman\u0131 ekledi\u011finizde, son derece h\u0131zl\u0131, ucuz, bak\u0131m maliyeti d\u00fc\u015f\u00fck ve otomatik \u00f6l\u00e7eklenen bir mimari elde ediyorsunuz.<\/p>\n<p>Bu yaz\u0131da DCHost ekibi olarak, S3 API uyumlu Object Storage \u00e7\u00f6z\u00fcmlerini ve MinIO\u2019yu kullanarak tamamen statik bir hosting altyap\u0131s\u0131n\u0131 nas\u0131l kurabilece\u011finizi ad\u0131m ad\u0131m anlataca\u011f\u0131z. Hedefimiz; \u201cVPS\u2019e ger\u00e7ekten ihtiyac\u0131m var m\u0131?\u201d sorusunu daha net yan\u0131tlayabilmeniz, hangi projede sadece Object Storage + CDN ile ilerleyebilece\u011finizi g\u00f6rebilmeniz ve do\u011fru yerde do\u011fru bile\u015feni kullanman\u0131z. \u00d6zellikle dok\u00fcmantasyon siteleri, landing page\u2019ler, SPA uygulamalar\u0131 ve statik blog\u2019lar i\u00e7in bu yakla\u015f\u0131m, klasik <a href=\"https:\/\/www.dchost.com\/tr\/web-hosting\">payla\u015f\u0131ml\u0131 hosting<\/a> veya VPS\u2019e g\u00f6re ciddi basitlik ve maliyet avantaj\u0131 sa\u011flayabiliyor.<\/p>\n<div id=\"toc_container\" class=\"toc_transparent no_bullets\"><p class=\"toc_title\">\u0130&ccedil;indekiler<\/p><ul class=\"toc_list\"><li><a href=\"#Object_Storagei_Origin_Yapmak_Ne_Anlama_Geliyor\"><span class=\"toc_number toc_depth_1\">1<\/span> Object Storage\u2019\u0131 Origin Yapmak Ne Anlama Geliyor?<\/a><\/li><li><a href=\"#Hangi_Projelerde_Tamamen_Statik_Mimari_Mantikli\"><span class=\"toc_number toc_depth_1\">2<\/span> Hangi Projelerde Tamamen Statik Mimari Mant\u0131kl\u0131?<\/a><\/li><li><a href=\"#Mimari_Bilesenler_S3_API_MinIO_CDN_ve_DNS\"><span class=\"toc_number toc_depth_1\">3<\/span> Mimari Bile\u015fenler: S3 API, MinIO, CDN ve DNS<\/a><ul><li><a href=\"#S3_API_Uyumlu_Object_Storage\"><span class=\"toc_number toc_depth_2\">3.1<\/span> S3 API Uyumlu Object Storage<\/a><\/li><li><a href=\"#MinIO_ile_Kendi_S3-Uyumlu_Depolamaniz\"><span class=\"toc_number toc_depth_2\">3.2<\/span> MinIO ile Kendi S3-Uyumlu Depolaman\u0131z<\/a><\/li><li><a href=\"#CDN_Katmani\"><span class=\"toc_number toc_depth_2\">3.3<\/span> CDN Katman\u0131<\/a><\/li><li><a href=\"#DNS_ve_SSLTLS\"><span class=\"toc_number toc_depth_2\">3.4<\/span> DNS ve SSL\/TLS<\/a><\/li><\/ul><\/li><li><a href=\"#Adim_Adim_Object_Storage_CDN_ile_Statik_Site_Yayina_Alma\"><span class=\"toc_number toc_depth_1\">4<\/span> Ad\u0131m Ad\u0131m: Object Storage + CDN ile Statik Site Yay\u0131na Alma<\/a><ul><li><a href=\"#1_Statik_Site_Ciktisini_Hazirlayin\"><span class=\"toc_number toc_depth_2\">4.1<\/span> 1. Statik Site \u00c7\u0131kt\u0131s\u0131n\u0131 Haz\u0131rlay\u0131n<\/a><\/li><li><a href=\"#2_Bucket_Olusturun_ve_Statik_Icerigi_Yukleyin\"><span class=\"toc_number toc_depth_2\">4.2<\/span> 2. Bucket Olu\u015fturun ve Statik \u0130\u00e7eri\u011fi Y\u00fckleyin<\/a><\/li><li><a href=\"#3_Bucketi_Statik_Site_Olarak_Yayinlayin\"><span class=\"toc_number toc_depth_2\">4.3<\/span> 3. Bucket\u2019\u0131 Statik Site Olarak Yay\u0131nlay\u0131n<\/a><\/li><li><a href=\"#4_CDNi_Origin_Olarak_Bucketa_Baglayin\"><span class=\"toc_number toc_depth_2\">4.4<\/span> 4. CDN\u2019i Origin Olarak Bucket\u2019a Ba\u011flay\u0131n<\/a><\/li><li><a href=\"#5_DNS_ve_SSL_Ayarlarini_Tamamlayin\"><span class=\"toc_number toc_depth_2\">4.5<\/span> 5. DNS ve SSL Ayarlar\u0131n\u0131 Tamamlay\u0131n<\/a><\/li><\/ul><\/li><li><a href=\"#MinIO_ile_Kendi_S3-Uyumlu_Origininizi_Kurmak\"><span class=\"toc_number toc_depth_1\">5<\/span> MinIO ile Kendi S3-Uyumlu Origin\u2019inizi Kurmak<\/a><\/li><li><a href=\"#Guvenlik_HTTPS_ve_Origin_Korumaya_Dikkat\"><span class=\"toc_number toc_depth_1\">6<\/span> G\u00fcvenlik, HTTPS ve Origin Korumaya Dikkat<\/a><\/li><li><a href=\"#Maliyet_Performans_ve_Olceklenebilirlik_Dengesi\"><span class=\"toc_number toc_depth_1\">7<\/span> Maliyet, Performans ve \u00d6l\u00e7eklenebilirlik Dengesi<\/a><\/li><li><a href=\"#Object_Storage_CDN_Opsiyonel_Uygulama_Sunucusu_Hibrit_Senaryolar\"><span class=\"toc_number toc_depth_1\">8<\/span> Object Storage + CDN + (Opsiyonel) Uygulama Sunucusu: Hibrit Senaryolar<\/a><\/li><li><a href=\"#DCHost_Altyapisinda_Tipik_Uygulama_Ornekleri\"><span class=\"toc_number toc_depth_1\">9<\/span> DCHost Altyap\u0131s\u0131nda Tipik Uygulama \u00d6rnekleri<\/a><ul><li><a href=\"#1_Tamamen_Statik_Dokumantasyon_Sitesi\"><span class=\"toc_number toc_depth_2\">9.1<\/span> 1. Tamamen Statik Dok\u00fcmantasyon Sitesi<\/a><\/li><li><a href=\"#2_SPA_API_Ayrimi\"><span class=\"toc_number toc_depth_2\">9.2<\/span> 2. SPA + API Ayr\u0131m\u0131<\/a><\/li><li><a href=\"#3_MinIO_ile_Ozel_Object_Storage_ve_Yuksek_Trafikli_Statik_Site\"><span class=\"toc_number toc_depth_2\">9.3<\/span> 3. MinIO ile \u00d6zel Object Storage ve Y\u00fcksek Trafikli Statik Site<\/a><\/li><\/ul><\/li><li><a href=\"#Sonuc_ve_Yol_Haritasi\"><span class=\"toc_number toc_depth_1\">10<\/span> Sonu\u00e7 ve Yol Haritas\u0131<\/a><\/li><\/ul><\/div>\n<h2><span id=\"Object_Storagei_Origin_Yapmak_Ne_Anlama_Geliyor\">Object Storage\u2019\u0131 Origin Yapmak Ne Anlama Geliyor?<\/span><\/h2>\n<p>Geleneksel mimaride taray\u0131c\u0131, DNS \u00fczerinden web sunucunuza gider; Nginx\/Apache gibi bir web sunucusu istekleri kar\u015f\u0131lar, gerekirse PHP veya ba\u015fka bir runtime\u2019a y\u00f6nlendirir ve dosyalar\u0131 diskinizden okuyarak cevaplar. Yani <strong>origin<\/strong> dedi\u011fimiz kaynak sunucu, tipik olarak bir VPS veya <a href=\"https:\/\/www.dchost.com\/tr\/fiziksel-sunucu\">dedicated sunucu<\/a>dur.<\/p>\n<p><strong>Object Storage tabanl\u0131 mimaride<\/strong> ise tablo de\u011fi\u015fir:<\/p>\n<ul>\n<li>Statik site \u00e7\u0131kt\u0131n\u0131z (HTML, CSS, JS, g\u00f6rseller, fontlar vb.) bir <strong>bucket<\/strong> i\u00e7ine y\u00fcklenir.<\/li>\n<li>Bucket, HTTP(S) ile okunabilir hale getirilir ve web site origin\u2019i gibi davran\u0131r.<\/li>\n<li>CDN, origin olarak bu bucket endpoint\u2019ini kullan\u0131r.<\/li>\n<li>Taray\u0131c\u0131, DNS \u00fczerinden CDN\u2019e gider; CDN de gerektik\u00e7e Object Storage\u2019dan dosyay\u0131 \u00e7ekip \u00f6nbelle\u011fe al\u0131r.<\/li>\n<\/ul>\n<p>Bu modelde ortada PHP, Node.js, .NET gibi sunucu tarafl\u0131 bir uygulama yoktur; sadece statik dosyalar vard\u0131r. Sunucu tarafl\u0131 render, API veya veritaban\u0131 gerekiyorsa, bunlar ayr\u0131 bir mimaride (\u00f6rne\u011fin DCHost VPS \u00fczerinde) \u00e7al\u0131\u015f\u0131r; Object Storage ise yaln\u0131zca frontend\u2019in statik dosyalar\u0131n\u0131 servis eder.<\/p>\n<p>Object Storage, klasik disk yap\u0131s\u0131ndan farkl\u0131 \u00e7al\u0131\u015ft\u0131\u011f\u0131 i\u00e7in bu yakla\u015f\u0131ma ge\u00e7meden \u00f6nce temel farklar\u0131 bilmek \u00f6nemli. Konuya yeniyseniz, <a href=\"https:\/\/www.dchost.com\/blog\/object-storage-vs-block-storage-vs-file-storage-web-uygulamalari-ve-yedekler-icin-dogru-secim\/\">Object Storage ile Block\/File Storage aras\u0131ndaki farklar\u0131 anlatt\u0131\u011f\u0131m\u0131z detayl\u0131 rehber<\/a> ba\u015flang\u0131\u00e7 i\u00e7in iyi bir zemin sa\u011flayacakt\u0131r.<\/p>\n<h2><span id=\"Hangi_Projelerde_Tamamen_Statik_Mimari_Mantikli\">Hangi Projelerde Tamamen Statik Mimari Mant\u0131kl\u0131?<\/span><\/h2>\n<p>\u00d6nce \u015fu soruyu netle\u015ftirelim: \u201cHer \u015feyi Object Storage\u2019a at\u0131p t\u00fcm siteleri oradan m\u0131 yay\u0131nlayal\u0131m?\u201d Cevap hay\u0131r. Ama do\u011fru projede, do\u011fru kurguyla kullan\u0131ld\u0131\u011f\u0131nda \u00e7ok g\u00fc\u00e7l\u00fc bir ara\u00e7.<\/p>\n<p>Genel olarak \u015fu t\u00fcr projelerde Object Storage\u2019\u0131 do\u011frudan origin yapmak mant\u0131kl\u0131d\u0131r:<\/p>\n<ul>\n<li><strong>Statik site jenerat\u00f6r\u00fc<\/strong> ile \u00fcretilen siteler (Hugo, Jekyll, Next.js\/NUXT statik export, vb.)<\/li>\n<li><strong>SPA (Single Page Application)<\/strong> yap\u0131lar (React, Vue, Angular gibi), API\u2019yi ayr\u0131 bir domain\/subdomain\u2019den t\u00fcketiyorsa<\/li>\n<li><strong>\u00dcr\u00fcn tan\u0131t\u0131m sayfalar\u0131<\/strong>, kampanya\/landing page\u2019ler<\/li>\n<li><strong>Dok\u00fcmantasyon siteleri<\/strong>, bilgi tabanlar\u0131, yard\u0131m merkezleri<\/li>\n<li>Kurumsal \u015firket sitelerinin <strong>\u201chareketsiz\u201d k\u0131s\u0131mlar\u0131<\/strong> (hakk\u0131m\u0131zda, ileti\u015fim, KVKK sayfalar\u0131 vb.)<\/li>\n<\/ul>\n<p>A\u015fa\u011f\u0131daki durumlarda ise tamamen statik bir mimari yerine, en az\u0131ndan bir uygulama sunucusunu devreye almak gerekir:<\/p>\n<ul>\n<li>WooCommerce, Magento gibi g\u00fc\u00e7l\u00fc bir e-ticaret altyap\u0131s\u0131 kullan\u0131yorsan\u0131z<\/li>\n<li>Giri\u015f\/\u00fcyelik, dinamik sepet, \u00f6deme ak\u0131\u015flar\u0131 gibi <strong>stateful<\/strong> s\u00fcre\u00e7ler varsa<\/li>\n<li>Sunucu tarafl\u0131 render (SSR) ihtiyac\u0131 kritik ise (SEO, ki\u015fiselle\u015ftirme vb.)<\/li>\n<\/ul>\n<p>Bu senaryolarda bile statik varl\u0131klar (CSS, JS, g\u00f6rseller, video vb.) Object Storage\u2019a ta\u015f\u0131n\u0131p sadece dinamik k\u0131sm\u0131n DCHost VPS veya dedicated sunucu \u00fczerinde kalmas\u0131; hem maliyet hem de performans a\u00e7\u0131s\u0131ndan olduk\u00e7a etkili bir hibrit \u00e7\u00f6z\u00fcmd\u00fcr. Bu karma yap\u0131y\u0131 daha \u00f6nce <a href=\"https:\/\/www.dchost.com\/blog\/object-storage-ile-medya-offload-stratejisi\/\">medya dosyalar\u0131n\u0131 Object Storage\u2019a offload etme stratejisini anlatt\u0131\u011f\u0131m\u0131z makale<\/a>de ayr\u0131nt\u0131l\u0131 i\u015flemi\u015ftik.<\/p>\n<h2><span id=\"Mimari_Bilesenler_S3_API_MinIO_CDN_ve_DNS\">Mimari Bile\u015fenler: S3 API, MinIO, CDN ve DNS<\/span><\/h2>\n<p>Object Storage\u2019\u0131 web site origin\u2019i haline getiren bile\u015fenleri netle\u015ftirelim.<\/p>\n<h3><span id=\"S3_API_Uyumlu_Object_Storage\">S3 API Uyumlu Object Storage<\/span><\/h3>\n<p>Bug\u00fcn piyasadaki pek \u00e7ok Object Storage \u00e7\u00f6z\u00fcm\u00fc, fiili standart haline gelen <strong>S3 API<\/strong> ile uyumlu. Bu size \u015fu avantajlar\u0131 sa\u011flar:<\/p>\n<ul>\n<li>CLI, SDK ve \u00fc\u00e7\u00fcnc\u00fc parti ara\u00e7lar\u0131n (rclone, restic, statik site deployment ara\u00e7lar\u0131 vb.) ayn\u0131 API ile \u00e7al\u0131\u015fmas\u0131<\/li>\n<li>Farkl\u0131 sa\u011flay\u0131c\u0131lar veya kendi kurdu\u011funuz MinIO aras\u0131nda nispeten kolay ge\u00e7i\u015f<\/li>\n<li>Versiyonlama, lifecycle policy, bucket policy gibi geli\u015fmi\u015f \u00f6zelliklerin tan\u0131d\u0131k bir modelle y\u00f6netilmesi<\/li>\n<\/ul>\n<p>\u0130ster DCHost altyap\u0131s\u0131nda sunulan Object Storage\u2019\u0131, ister kendi VPS\u2019inizde kurdu\u011funuz MinIO\u2019yu kullan\u0131n; S3 uyumlulu\u011fu sayesinde deployment ara\u00e7lar\u0131n\u0131z de\u011fi\u015fmeden kal\u0131r.<\/p>\n<h3><span id=\"MinIO_ile_Kendi_S3-Uyumlu_Depolamaniz\">MinIO ile Kendi S3-Uyumlu Depolaman\u0131z<\/span><\/h3>\n<p>MinIO, S3 uyumlu, hafif ama \u00fcretim i\u00e7in fazlas\u0131yla yeterli bir Object Storage yaz\u0131l\u0131m\u0131. DCHost \u00fczerinde kiralad\u0131\u011f\u0131n\u0131z bir NVMe VPS veya dedicated sunucuya MinIO kurarak, kendi \u00f6zel Object Storage ortam\u0131n\u0131z\u0131 olu\u015fturabilirsiniz. Bu yakla\u015f\u0131m:<\/p>\n<ul>\n<li>Veriyi kendi kontrol\u00fcn\u00fczde tutmak istedi\u011finiz durumlarda<\/li>\n<li>Reg\u00fclasyon veya s\u00f6zle\u015fme gere\u011fi belirli lokasyonda depolama mecburiyeti oldu\u011funda<\/li>\n<li>\u00c7ok y\u00fcksek bant geni\u015fli\u011fi trafi\u011finde, \u00f6zel fiyatland\u0131rma yapmak istedi\u011finizde<\/li>\n<\/ul>\n<p>\u00f6zellikle anlaml\u0131 hale gelir. MinIO taraf\u0131 sizin i\u00e7in yeni ise, ad\u0131m ad\u0131m kurulum, TLS, policy ve erasure coding detaylar\u0131n\u0131 <a href=\"https:\/\/www.dchost.com\/blog\/vps-uzerinde-minio-ile-s3%E2%80%91uyumlu-depolama-nasil-uretim%E2%80%91hazir-kurulur-erasure-coding-tls-ve-policyleri-tatli-tatli-anlatiyorum\/\">VPS \u00fczerinde MinIO ile S3-uyumlu depolama kurulum rehberi<\/a>nde detayl\u0131 anlatt\u0131k.<\/p>\n<h3><span id=\"CDN_Katmani\">CDN Katman\u0131<\/span><\/h3>\n<p>CDN (Content Delivery Network), co\u011frafi olarak da\u011f\u0131t\u0131k noktalar \u00fczerinden statik i\u00e7eri\u011fi son kullan\u0131c\u0131ya en yak\u0131n lokasyondan sunman\u0131z\u0131 sa\u011flar. Object Storage\u2019\u0131n kendi endpoint\u2019ini do\u011frudan kullanabilirsiniz; fakat pratikte \u015fu nedenlerle CDN katman\u0131 tercih edilir:<\/p>\n<ul>\n<li><strong>Gecikme (latency)<\/strong> d\u00fc\u015fer, TTFB iyile\u015fir.<\/li>\n<li>Object Storage origin\u2019inize gelen istek say\u0131s\u0131 azal\u0131r; bant geni\u015fli\u011fi maliyeti d\u00fc\u015fer.<\/li>\n<li>Edge seviyesinde WAF, rate limiting, bot korumas\u0131 gibi ek g\u00fcvenlik imk\u00e2nlar\u0131 elde edersiniz.<\/li>\n<\/ul>\n<p>CDN \u00f6nbellekleme mant\u0131\u011f\u0131n\u0131 ve do\u011fru cache anahtar\u0131 tasar\u0131m\u0131n\u0131 daha teknik bir seviyede incelemek isterseniz, <a href=\"https:\/\/www.dchost.com\/blog\/cdn-ve-tarayici-onbelleginde-cache-busting-stratejileri\/\">CDN ve taray\u0131c\u0131 \u00f6nbelle\u011finde cache busting stratejileri<\/a> yaz\u0131m\u0131z size iyi fikir verecektir.<\/p>\n<h3><span id=\"DNS_ve_SSLTLS\">DNS ve SSL\/TLS<\/span><\/h3>\n<p>Son ad\u0131mda alan ad\u0131n\u0131z\u0131 CDN\u2019e (ve dolayl\u0131 olarak Object Storage origin\u2019ine) y\u00f6nlendirirsiniz. Tipik ak\u0131\u015f \u015fu \u015fekildedir:<\/p>\n<ol>\n<li><code>www.ornekalanadi.com<\/code> i\u00e7in A\/AAAA veya CNAME kayd\u0131 CDN\u2019e i\u015faret eder.<\/li>\n<li>CDN, kendi i\u00e7inde origin olarak S3\/MinIO endpoint\u2019inizi kullan\u0131r.<\/li>\n<li>SSL sertifikas\u0131 CDN \u00fczerinde veya alternatif olarak do\u011frudan origin taraf\u0131nda y\u00f6netilir.<\/li>\n<\/ol>\n<p>Bu sayede ziyaret\u00e7i ile CDN aras\u0131ndaki trafik her zaman HTTPS ile \u015fifrelenir; CDN ile origin aras\u0131ndaki ba\u011flant\u0131 i\u00e7in de \u201cFull\u201d veya \u201cFull (Strict)\u201d benzeri modlar kullanarak u\u00e7tan uca \u015fifreleme sa\u011flayabilirsiniz.<\/p>\n<h2><span id=\"Adim_Adim_Object_Storage_CDN_ile_Statik_Site_Yayina_Alma\">Ad\u0131m Ad\u0131m: Object Storage + CDN ile Statik Site Yay\u0131na Alma<\/span><\/h2>\n<p>\u015eimdi teoriden prati\u011fe ge\u00e7elim. A\u015fa\u011f\u0131da, DCHost altyap\u0131s\u0131nda tipik bir statik site yay\u0131na alma s\u00fcrecini \u00f6zetleyelim.<\/p>\n<h3><span id=\"1_Statik_Site_Ciktisini_Hazirlayin\">1. Statik Site \u00c7\u0131kt\u0131s\u0131n\u0131 Haz\u0131rlay\u0131n<\/span><\/h3>\n<p>\u00d6ncelikle sitenizin tamamen statik bir \u00e7\u0131kt\u0131s\u0131n\u0131 alman\u0131z gerekiyor. Bu:<\/p>\n<ul>\n<li>Hugo, Jekyll vb. bir jenerat\u00f6r kullan\u0131yorsan\u0131z <code>hugo<\/code>, <code>jekyll build<\/code> gibi komutlarla<\/li>\n<li>Next.js, Nuxt gibi framework\u2019lerde <code>next export<\/code>, <code>nuxt generate<\/code> ile<\/li>\n<li>Veya klasik HTML\/CSS\/JS yap\u0131n\u0131zda do\u011frudan proje klas\u00f6r\u00fcn\u00fcz<\/li>\n<\/ul>\n<p>olabilir. Ama\u00e7; deploy edilecek net bir <strong>build klas\u00f6r\u00fc<\/strong> elde etmek. \u00d6rne\u011fin <code>dist\/<\/code>, <code>build\/<\/code> veya <code>public\/<\/code>.<\/p>\n<h3><span id=\"2_Bucket_Olusturun_ve_Statik_Icerigi_Yukleyin\">2. Bucket Olu\u015fturun ve Statik \u0130\u00e7eri\u011fi Y\u00fckleyin<\/span><\/h3>\n<p>Sonraki ad\u0131m, Object Storage \u00fczerinde bir <strong>bucket<\/strong> olu\u015fturmak:<\/p>\n<ul>\n<li>Bucket ad\u0131n\u0131 DNS uyumlu ve anlaml\u0131 se\u00e7in: <code>site-ornekalanadi-com<\/code> gibi.<\/li>\n<li>B\u00f6lge (region) se\u00e7imini hedef kitlenize en yak\u0131n lokasyona g\u00f6re yap\u0131n.<\/li>\n<li>Eri\u015fim anahtarlar\u0131n\u0131z\u0131 (access key \/ secret key) g\u00fcvenli bir yerde saklay\u0131n.<\/li>\n<\/ul>\n<p>Y\u00fckleme i\u00e7in:<\/p>\n<ul>\n<li>S3 uyumlu CLI ara\u00e7lar\u0131 (<code>aws s3 sync<\/code> benzeri),<\/li>\n<li><code>rclone<\/code> veya benzeri senkronizasyon ara\u00e7lar\u0131n\u0131,<\/li>\n<li>Veya do\u011frudan panel \u00fczerinden s\u00fcr\u00fckle-b\u0131rak aray\u00fcz\u00fcn\u00fc<\/li>\n<\/ul>\n<p>kullanabilirsiniz. B\u00fcy\u00fck projelerde CLI ile otomatik senkronizasyon hem daha h\u0131zl\u0131 hem de CI\/CD\u2019ye kolay entegre olur.<\/p>\n<h3><span id=\"3_Bucketi_Statik_Site_Olarak_Yayinlayin\">3. Bucket\u2019\u0131 Statik Site Olarak Yay\u0131nlay\u0131n<\/span><\/h3>\n<p>Bir\u00e7ok S3 uyumlu Object Storage, bucket\u2019\u0131 direkt \u201cstatik site\u201d moduna alman\u0131za izin verir. Bu modda:<\/p>\n<ul>\n<li><strong>Index dok\u00fcman\u0131<\/strong> (genellikle <code>index.html<\/code>) tan\u0131mlars\u0131n\u0131z.<\/li>\n<li>Opsiyonel olarak <strong>error dok\u00fcman\u0131<\/strong> (\u00f6rne\u011fin <code>404.html<\/code>) belirlersiniz.<\/li>\n<li>Bucket policy ile herkese okuma izni (public read) verirsiniz.<\/li>\n<\/ul>\n<p>Bu a\u015famada iki noktaya \u00f6zellikle dikkat edin:<\/p>\n<ol>\n<li><strong>G\u00fcvenlik:<\/strong> Bucket\u2019\u0131 tamamen \u201cpublic\u201d yapmak yerine, m\u00fcmk\u00fcn oldu\u011funca sadece <code>GET<\/code> isteklerine izin veren, yazma yetkisi i\u00e7ermeyen bir policy tan\u0131mlay\u0131n.<\/li>\n<li><strong>Dizin yap\u0131s\u0131:<\/strong> SPA kullan\u0131yorsan\u0131z, <code>\/route<\/code> benzeri URL\u2019ler i\u00e7in 404 yerine <code>index.html<\/code> d\u00f6nmeniz gerekebilir. CDN veya origin taraf\u0131nda \u201cSPA fallback\u201d kural\u0131 tan\u0131mlayarak bunu \u00e7\u00f6zebilirsiniz.<\/li>\n<\/ol>\n<h3><span id=\"4_CDNi_Origin_Olarak_Bucketa_Baglayin\">4. CDN\u2019i Origin Olarak Bucket\u2019a Ba\u011flay\u0131n<\/span><\/h3>\n<p>Art\u0131k bucket endpoint\u2019iniz haz\u0131r. S\u0131rada CDN taraf\u0131nda bir <strong>pull zone<\/strong> veya benzeri tan\u0131mlama var:<\/p>\n<ul>\n<li>Origin URL olarak Object Storage statik site endpoint\u2019ini girin.<\/li>\n<li>Cache-Control ve TTL de\u011ferlerini ihtiya\u00e7lar\u0131n\u0131za g\u00f6re ayarlay\u0131n.<\/li>\n<li>Gzip\/Brotli s\u0131k\u0131\u015ft\u0131rmay\u0131 aktif edin.<\/li>\n<li>HTTP\/2 ve m\u00fcmk\u00fcnse HTTP\/3 deste\u011fini a\u00e7\u0131n.<\/li>\n<\/ul>\n<p>Statik dosyalarda agresif \u00f6nbellekleme yapmak m\u00fcmk\u00fcn. Versiyonlama (hash\u2019li dosya adlar\u0131) kullan\u0131yorsan\u0131z, CSS\/JS i\u00e7in 1 y\u0131l TTL vermek genellikle sorunsuzdur. Daha detayl\u0131 cache busting stratejileri i\u00e7in tekrar <a href=\"https:\/\/www.dchost.com\/blog\/cdn-ve-tarayici-onbelleginde-cache-busting-stratejileri\/\">CDN ve taray\u0131c\u0131 \u00f6nbelle\u011finde cache busting stratejileri<\/a> makalesine g\u00f6z atabilirsiniz.<\/p>\n<h3><span id=\"5_DNS_ve_SSL_Ayarlarini_Tamamlayin\">5. DNS ve SSL Ayarlar\u0131n\u0131 Tamamlay\u0131n<\/span><\/h3>\n<p>CDN taraf\u0131nda alan ad\u0131n\u0131z\u0131 ekledikten sonra:<\/p>\n<ul>\n<li>Alan ad\u0131n\u0131z\u0131n NS kay\u0131tlar\u0131 hangi sa\u011flay\u0131c\u0131da ise, orada <code>www<\/code> ve gerekirse k\u00f6k alan ad\u0131 (<code>@<\/code>) i\u00e7in CNAME\/A kay\u0131tlar\u0131n\u0131 CDN\u2019e y\u00f6nlendirin.<\/li>\n<li>CDN \u00fczerinden otomatik <a href=\"https:\/\/www.dchost.com\/tr\/ssl\">SSL sertifikas\u0131<\/a> al\u0131n veya isterseniz kendi \u00f6zel sertifikan\u0131z\u0131 y\u00fckleyin.<\/li>\n<li>HTTP \u2192 HTTPS y\u00f6nlendirmesini zorunlu hale getirin.<\/li>\n<\/ul>\n<p>Art\u0131k <code>https:\/\/www.ornekalanadi.com<\/code> adresine gitti\u011finizde, taray\u0131c\u0131 \u2192 CDN \u2192 Object Storage zinciriyle tamamen statik, h\u0131zl\u0131 ve \u00f6l\u00e7eklenebilir bir site \u00e7al\u0131\u015f\u0131yor olacakt\u0131r.<\/p>\n<h2><span id=\"MinIO_ile_Kendi_S3-Uyumlu_Origininizi_Kurmak\">MinIO ile Kendi S3-Uyumlu Origin\u2019inizi Kurmak<\/span><\/h2>\n<p>Baz\u0131 ekipler, Object Storage taraf\u0131nda tamamen kendi altyap\u0131s\u0131n\u0131 kullanmak istiyor. Sebepler:<\/p>\n<ul>\n<li>Verinin belirli bir \u00fclkede veya sadece kendi veri merkezinde tutulmas\u0131 gereklili\u011fi<\/li>\n<li>\u00c7ok y\u00fcksek trafik ve bant geni\u015fli\u011fi i\u00e7in \u00f6zelle\u015ftirilmi\u015f peering ve fiyatlama ihtiyac\u0131<\/li>\n<li>\u00d6zel g\u00fcvenlik politikalar\u0131, mTLS, private network \u00fczerinden eri\u015fim gibi ileri seviye gereksinimler<\/li>\n<\/ul>\n<p>Bu durumda tipik mimari \u015fu \u015fekilde olur:<\/p>\n<ol>\n<li>DCHost \u00fczerinde NVMe diskli bir VPS veya dedicated sunucu kiralars\u0131n\u0131z.<\/li>\n<li>Sunucuya MinIO kurup S3 uyumlu bir Object Storage cluster\u2019\u0131 olu\u015fturursunuz.<\/li>\n<li>Sunucuyu g\u00fcvenlik duvar\u0131, mTLS ve private network ile korursunuz.<\/li>\n<li>CDN\u2019i origin olarak bu MinIO endpoint\u2019ine ba\u011flars\u0131n\u0131z.<\/li>\n<\/ol>\n<p>MinIO ile \u00fcretim ortam\u0131na haz\u0131r bir kurulumda; erasure coding, TLS, bucket policy, kullan\u0131c\u0131 yetkilendirmesi ve izleme (monitoring) kritik ba\u015fl\u0131klar. Bunlar\u0131n hepsini tek tek, \u00f6rnek konfig\u00fcrasyonlarla <a href=\"https:\/\/www.dchost.com\/blog\/vps-uzerinde-minio-ile-s3%E2%80%91uyumlu-depolama-nasil-uretim%E2%80%91hazir-kurulur-erasure-coding-tls-ve-policyleri-tatli-tatli-anlatiyorum\/\">VPS \u00fczerinde MinIO ile S3-uyumlu depolama kurulum rehberi<\/a>nde anlatt\u0131k; bu yaz\u0131daki mimariyi uygulamaya koymadan \u00f6nce o rehbere g\u00f6z atman\u0131zda fayda var.<\/p>\n<h2><span id=\"Guvenlik_HTTPS_ve_Origin_Korumaya_Dikkat\">G\u00fcvenlik, HTTPS ve Origin Korumaya Dikkat<\/span><\/h2>\n<p>\u201cNas\u0131l olsa sadece statik dosya, g\u00fcvenlik \u00e7ok kritik de\u011fil\u201d d\u00fc\u015f\u00fcncesi maalesef s\u0131k yap\u0131lan bir hata. Object Storage\u2019\u0131 origin yapt\u0131\u011f\u0131n\u0131z mimaride \u015fu noktalara mutlaka dikkat edin:<\/p>\n<ul>\n<li><strong>Bucket policy:<\/strong> Yazma (PUT, DELETE) yetkisini asla anonim kullan\u0131c\u0131lara a\u00e7may\u0131n. Public eri\u015fim sadece <code>GET<\/code> ve m\u00fcmk\u00fcnse belirli bir yol pattern\u2019i ile s\u0131n\u0131rl\u0131 olsun.<\/li>\n<li><strong>Origin eri\u015fimi:<\/strong> CDN d\u0131\u015f\u0131nda do\u011frudan bucket URL\u2019sini kullanan istemcileri k\u0131s\u0131tlamay\u0131 de\u011ferlendirin; IP allowlist veya imzal\u0131 URL\u2019ler i\u015finize yarayabilir.<\/li>\n<li><strong>HTTPS zorunlulu\u011fu:<\/strong> Hem CDN \u2192 kullan\u0131c\u0131, hem CDN \u2192 origin aras\u0131 trafi\u011fin \u015fifreli oldu\u011fundan emin olun.<\/li>\n<li><strong>G\u00fcnl\u00fckleme (logging):<\/strong> Bucket access log\u2019lar\u0131n\u0131 a\u00e7\u0131n; beklenmedik bir trafik veya yetkisiz eri\u015fim denemelerini izleyin.<\/li>\n<\/ul>\n<p>Ayr\u0131ca statik de olsa sitenizde do\u011fru HTTP g\u00fcvenlik ba\u015fl\u0131klar\u0131n\u0131 (HSTS, CSP, X-Frame-Options, Referrer-Policy vb.) g\u00f6ndermek, XSS ve clickjacking gibi sald\u0131r\u0131lara kar\u015f\u0131 \u00f6nemli bir koruma katman\u0131 sa\u011flar. Bu ba\u015fl\u0131klar\u0131 baz\u0131 CDN\u2019ler edge seviyesinde ekleyebildi\u011fi i\u00e7in, ekstra bir sunucuya ihtiya\u00e7 duymadan g\u00fcvenli\u011fi g\u00fc\u00e7lendirebilirsiniz.<\/p>\n<h2><span id=\"Maliyet_Performans_ve_Olceklenebilirlik_Dengesi\">Maliyet, Performans ve \u00d6l\u00e7eklenebilirlik Dengesi<\/span><\/h2>\n<p>Statik bar\u0131nd\u0131rma mimarisinin en b\u00fcy\u00fck avantajlar\u0131ndan biri, trafik artt\u0131k\u00e7a yeni sunucular a\u00e7mak zorunda olmaman\u0131z. Object Storage ve CDN, do\u011fas\u0131 gere\u011fi \u201cpayla\u015f\u0131ml\u0131 ama \u00f6l\u00e7eklenebilir\u201d servislerdir. Yine de maliyet kalemlerini do\u011fru okumak \u00f6nemli:<\/p>\n<ul>\n<li><strong>Depolama maliyeti:<\/strong> GB ba\u015f\u0131na ayl\u0131k \u00fccret.<\/li>\n<li><strong>\u0130stek maliyeti:<\/strong> \u00d6zellikle <code>GET<\/code> istek say\u0131s\u0131 belirli e\u015fikleri a\u015farsa \u00f6nemli hale gelebilir.<\/li>\n<li><strong>\u00c7\u0131k\u0131\u015f trafi\u011fi (egress):<\/strong> Kullan\u0131c\u0131ya giden veri miktar\u0131 en b\u00fcy\u00fck kalemdir; CDN \u00f6nbellekleme oran\u0131 (cache hit ratio) bu y\u00fczden kritiktir.<\/li>\n<\/ul>\n<p>Kapsaml\u0131 bir maliyet hesab\u0131 yapmak istiyorsan\u0131z, farkl\u0131 senaryolar\u0131 ve lifecycle policy gibi ara\u00e7lar\u0131 ayr\u0131nt\u0131l\u0131 inceledi\u011fimiz <a href=\"https:\/\/www.dchost.com\/blog\/object-storage-maliyet-optimizasyonu-lifecycle-policy-cold-storage-ve-bant-genisligi\/\">Object Storage maliyet optimizasyonu yaz\u0131m\u0131z<\/a>\u0131 mutlaka okuman\u0131z\u0131 \u00f6neririz.<\/p>\n<p>Performans taraf\u0131nda ise:<\/p>\n<ul>\n<li>Do\u011fru b\u00f6lge se\u00e7imi (origin\u2019in kullan\u0131c\u0131 kitlenize yak\u0131n olmas\u0131)<\/li>\n<li>CDN edge noktalar\u0131n\u0131n co\u011frafi da\u011f\u0131l\u0131m\u0131<\/li>\n<li>HTTP\/2 ve HTTP\/3 deste\u011fi<\/li>\n<li>\u00d6nbellek stratejiniz (uzun TTL, hash\u2019li dosya adlar\u0131, do\u011fru varyantlar)<\/li>\n<\/ul>\n<p>en belirleyici fakt\u00f6rlerdir. DCHost olarak altyap\u0131m\u0131zda bu bile\u015fenleri birlikte ele alarak hem gecikmeyi d\u00fc\u015f\u00fcrmeye hem de trafik ba\u015f\u0131na maliyeti makul seviyede tutmaya odaklan\u0131yoruz.<\/p>\n<h2><span id=\"Object_Storage_CDN_Opsiyonel_Uygulama_Sunucusu_Hibrit_Senaryolar\">Object Storage + CDN + (Opsiyonel) Uygulama Sunucusu: Hibrit Senaryolar<\/span><\/h2>\n<p>\u00c7o\u011fu ger\u00e7ek d\u00fcnya projesi, siyah-beyaz de\u011fil; yani tamamen statik ya da tamamen dinamik olmak zorunda de\u011fil. S\u0131k g\u00f6rd\u00fc\u011f\u00fcm\u00fcz hibrit senaryolar:<\/p>\n<ul>\n<li><strong>Headless CMS + statik frontend:<\/strong> \u0130\u00e7erik y\u00f6netimi i\u00e7in paneliniz DCHost VPS \u00fczerinde \u00e7al\u0131\u015f\u0131r; frontend ise statik olarak build edilip Object Storage + CDN \u00fczerinden yay\u0131nlan\u0131r.<\/li>\n<li><strong>API arkas\u0131 SPA:<\/strong> React\/Vue ile yaz\u0131lm\u0131\u015f SPA, Object Storage\u2019ta host edilir; API\u2019ler yine DCHost VPS\/dedicated \u00fczerinde JSON servis eder.<\/li>\n<li><strong>B\u00fcy\u00fck medya offload\u2019u:<\/strong> WordPress gibi bir sistem kullan\u0131yor ama medya dosyalar\u0131n\u0131 Object Storage\u2019a ta\u015f\u0131yorsan\u0131z, hem disk hem IOPS y\u00fck\u00fc ciddi oranda azal\u0131r.<\/li>\n<\/ul>\n<p>Son sayd\u0131\u011f\u0131m\u0131z senaryoyu zaten ayr\u0131nt\u0131l\u0131 \u015fekilde <a href=\"https:\/\/www.dchost.com\/blog\/object-storage-ile-medya-offload-stratejisi\/\">medya dosyalar\u0131n\u0131 Object Storage\u2019a offload etme stratejisini anlatt\u0131\u011f\u0131m\u0131z makale<\/a>de i\u015flemi\u015ftik. Buradaki fark, sadece medya de\u011fil, sitenin tamam\u0131n\u0131 statik hale getirip origin\u2019i de Object Storage\u2019a ta\u015f\u0131man\u0131z.<\/p>\n<h2><span id=\"DCHost_Altyapisinda_Tipik_Uygulama_Ornekleri\">DCHost Altyap\u0131s\u0131nda Tipik Uygulama \u00d6rnekleri<\/span><\/h2>\n<p>DCHost taraf\u0131nda m\u00fc\u015fterilerimizle birlikte kurdu\u011fumuz yayg\u0131n mimarileri de k\u0131saca \u00f6rnekleyelim.<\/p>\n<h3><span id=\"1_Tamamen_Statik_Dokumantasyon_Sitesi\">1. Tamamen Statik Dok\u00fcmantasyon Sitesi<\/span><\/h3>\n<ul>\n<li>Hugo ile derlenen dok\u00fcmantasyon sitesi, CI pipeline\u2019\u0131nda build edilir.<\/li>\n<li>Build \u00e7\u0131kt\u0131s\u0131, S3 uyumlu Object Storage bucket\u2019\u0131na <code>sync<\/code> ile y\u00fcklenir.<\/li>\n<li>CDN, origin olarak bu bucket\u2019\u0131 kullan\u0131r; HTML i\u00e7in 5 dakika, CSS\/JS\/g\u00f6rseller i\u00e7in 30 g\u00fcn TTL verilir.<\/li>\n<li>Ek bir VPS veya panel gerekmez; bak\u0131m maliyeti neredeyse s\u0131f\u0131ra iner.<\/li>\n<\/ul>\n<h3><span id=\"2_SPA_API_Ayrimi\">2. SPA + API Ayr\u0131m\u0131<\/span><\/h3>\n<ul>\n<li>Vue.js ile yaz\u0131lm\u0131\u015f SPA, Object Storage + CDN\u2019de host edilir.<\/li>\n<li>Laravel API, DCHost NVMe VPS \u00fczerinde, ayr\u0131 bir subdomain\u2019den yay\u0131nlan\u0131r.<\/li>\n<li>CDN\u2019de SPA i\u00e7in SPA fallback kural\u0131 tan\u0131mlan\u0131r; t\u00fcm bilinmeyen yollar <code>index.html<\/code>\u2019e d\u00fc\u015fer.<\/li>\n<li>API taraf\u0131 i\u00e7in rate limiting, WAF ve ayr\u0131 bir \u00f6l\u00e7eklendirme stratejisi uygulan\u0131r.<\/li>\n<\/ul>\n<h3><span id=\"3_MinIO_ile_Ozel_Object_Storage_ve_Yuksek_Trafikli_Statik_Site\">3. MinIO ile \u00d6zel Object Storage ve Y\u00fcksek Trafikli Statik Site<\/span><\/h3>\n<ul>\n<li>Kurumsal bir m\u00fc\u015fteri, trafi\u011fin ve verinin tamamen kendi kontrol\u00fcnde olmas\u0131n\u0131 istiyor.<\/li>\n<li>Birden fazla DCHost VPS \u00fczerinde MinIO cluster kuruldu; erasure coding ve TLS etkin.<\/li>\n<li>CDN, origin olarak \u00f6zel MinIO endpoint\u2019ini kullan\u0131yor; origin sadece CDN IP\u2019lerine a\u00e7\u0131k.<\/li>\n<li>Arka tarafta ayr\u0131 bir cluster izleme (Prometheus\/Grafana vb.) ve loglama sistemi var.<\/li>\n<\/ul>\n<h2><span id=\"Sonuc_ve_Yol_Haritasi\">Sonu\u00e7 ve Yol Haritas\u0131<\/span><\/h2>\n<p>Object Storage\u2019\u0131 do\u011frudan web site origin\u2019i olarak kullanmak, \u00f6zellikle statik i\u00e7erik a\u011f\u0131rl\u0131kl\u0131 projeler i\u00e7in son derece g\u00fc\u00e7l\u00fc bir yakla\u015f\u0131m. Do\u011fru kurguland\u0131\u011f\u0131nda:<\/p>\n<ul>\n<li>VPS\/dedicated sunucu say\u0131n\u0131z\u0131 azaltabilir,<\/li>\n<li>Bak\u0131ma ihtiya\u00e7 duyan bile\u015fenleri minimuma indirebilir,<\/li>\n<li>CDN ile birlikte otomatik \u00f6l\u00e7eklenebilir,<\/li>\n<li>Depolama ve bant geni\u015fli\u011fi maliyetlerini daha \u00f6ng\u00f6r\u00fclebilir hale getirebilirsiniz.<\/li>\n<\/ul>\n<p>Elbette her projeyi \u201ctamamen statik\u201d hale getirmek m\u00fcmk\u00fcn de\u011fil; ama en az\u0131ndan frontend, medya ve dok\u00fcmantasyon gibi k\u0131s\u0131mlar\u0131 Object Storage\u2019a ta\u015f\u0131yarak bile b\u00fcy\u00fck bir kazan\u0131m elde edebilirsiniz. Nereden ba\u015flayaca\u011f\u0131n\u0131z\u0131 bilmiyorsan\u0131z, \u00f6nce projenizi par\u00e7alara ay\u0131r\u0131n: hangisi ger\u00e7ekten dinamik, hangisi sadece dosya servis ediyor? Dinamik olmayan her katman, aday bir statik origin adayd\u0131r.<\/p>\n<p>DCHost olarak; Object Storage, CDN, MinIO cluster\u2019lar\u0131 ve DCHost VPS\/dedicated altyap\u0131s\u0131n\u0131 bir araya getirerek sizin i\u00e7in en uygun statik veya hibrit mimariyi planlamaya al\u0131\u015fk\u0131n\u0131z. Mevcut sitenizi bu mimariye ta\u015f\u0131mak, maliyet ve performans a\u00e7\u0131s\u0131ndan nas\u0131l bir tablo \u00e7\u0131kaca\u011f\u0131n\u0131 g\u00f6rmek veya MinIO tabanl\u0131 \u00f6zel bir Object Storage kurulumunu de\u011ferlendirmek isterseniz, ekibimizle birlikte ad\u0131m ad\u0131m bir yol haritas\u0131 \u00e7\u0131karabiliriz. \u0130htiyac\u0131n\u0131z ger\u00e7ekten bir sunucu mu, yoksa iyi tasarlanm\u0131\u015f bir Object Storage + CDN mimarisi mi; gelin, birlikte netle\u015ftirelim.<\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>Son birka\u00e7 y\u0131lda modern frontend framework\u2019ler, statik site jenerat\u00f6rleri ve CDN\u2019ler sayesinde web uygulamas\u0131 mimarisi ciddi \u015fekilde de\u011fi\u015fti. Art\u0131k her k\u00fc\u00e7\u00fck proje i\u00e7in mutlaka bir web sunucusu, PHP\/FPM veya Node.js arka plan\u0131 kurmak zorunda de\u011filsiniz. Bir\u00e7ok senaryoda; derlenmi\u015f HTML, CSS, JS ve medya dosyalar\u0131n\u0131 Object Storage \u00fczerinde tutup, bu depoyu do\u011frudan web site origin\u2019i olarak [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":4134,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[26],"tags":[],"class_list":["post-4133","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-teknoloji"],"_links":{"self":[{"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/posts\/4133","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/comments?post=4133"}],"version-history":[{"count":0,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/posts\/4133\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/media\/4134"}],"wp:attachment":[{"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/media?parent=4133"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/categories?post=4133"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/tags?post=4133"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}