{"id":1340,"date":"2025-11-04T20:59:31","date_gmt":"2025-11-04T17:59:31","guid":{"rendered":"https:\/\/www.dchost.com\/blog\/cdn-onbellekleme-cache-control-ve-edge-kurallari-wordpress-ve-woocommercede-tam-isabet-ayarlar\/"},"modified":"2025-11-04T20:59:31","modified_gmt":"2025-11-04T17:59:31","slug":"cdn-onbellekleme-cache-control-ve-edge-kurallari-wordpress-ve-woocommercede-tam-isabet-ayarlar","status":"publish","type":"post","link":"https:\/\/www.dchost.com\/blog\/cdn-onbellekleme-cache-control-ve-edge-kurallari-wordpress-ve-woocommercede-tam-isabet-ayarlar\/","title":{"rendered":"CDN \u00d6nbellekleme, Cache-Control ve Edge Kurallar\u0131: WordPress ve WooCommerce\u2019de Tam \u0130sabet Ayarlar"},"content":{"rendered":"<div class=\"dchost-blog-content-wrapper\"><div id=\"toc_container\" class=\"toc_transparent no_bullets\"><p class=\"toc_title\">\u0130&ccedil;indekiler<\/p><ul class=\"toc_list\"><li><a href=\"#Hizli_Bir_Hikayeyle_Baslayalim_Bir_Kampanya_Gunu_ve_Nefes_Alan_Sayfalar\"><span class=\"toc_number toc_depth_1\">1<\/span> H\u0131zl\u0131 Bir Hik\u00e2yeyle Ba\u015flayal\u0131m: Bir Kampanya G\u00fcn\u00fc ve Nefes Alan Sayfalar<\/a><\/li><li><a href=\"#CDN_Onbellekleme_Nedir_Nereden_Baslamali\"><span class=\"toc_number toc_depth_1\">2<\/span> CDN \u00d6nbellekleme Nedir, Nereden Ba\u015flamal\u0131?<\/a><ul><li><a href=\"#Vitrin_Depo_ve_Kasa_Benzetmesi\"><span class=\"toc_number toc_depth_2\">2.1<\/span> Vitrin, Depo ve Kasa Benzetmesi<\/a><\/li><li><a href=\"#Statik_ve_Yari-Dinamik_Icerikler\"><span class=\"toc_number toc_depth_2\">2.2<\/span> Statik ve Yar\u0131-Dinamik \u0130\u00e7erikler<\/a><\/li><li><a href=\"#Olcegi_Buyutmenin_Sirri\"><span class=\"toc_number toc_depth_2\">2.3<\/span> \u00d6l\u00e7e\u011fi B\u00fcy\u00fctmenin S\u0131rr\u0131<\/a><\/li><\/ul><\/li><li><a href=\"#Cache-Control_Basliklari_Ne_Soylersek_CDN_Ne_Anlar\"><span class=\"toc_number toc_depth_1\">3<\/span> Cache-Control Ba\u015fl\u0131klar\u0131: Ne S\u00f6ylersek CDN Ne Anlar?<\/a><ul><li><a href=\"#Basitce_Max-Age_S-Maxage_ve_Arkadaslari\"><span class=\"toc_number toc_depth_2\">3.1<\/span> Basit\u00e7e: Max-Age, S-Maxage ve Arkada\u015flar\u0131<\/a><\/li><li><a href=\"#PublicPrivate_ETag_ve_Son_Degistirilme\"><span class=\"toc_number toc_depth_2\">3.2<\/span> Public\/Private, ETag ve Son De\u011fi\u015ftirilme<\/a><\/li><li><a href=\"#HTML_ile_Statik_Dosyalar_Arasindaki_Denge\"><span class=\"toc_number toc_depth_2\">3.3<\/span> HTML ile Statik Dosyalar Aras\u0131ndaki Denge<\/a><\/li><\/ul><\/li><li><a href=\"#WordPress_ve_WooCommercede_Neyi_Cachelemeli_Neyi_Bypass_Etmeli\"><span class=\"toc_number toc_depth_1\">4<\/span> WordPress ve WooCommerce\u2019de Neyi Cache\u2019lemeli, Neyi Bypass Etmeli?<\/a><ul><li><a href=\"#Giris_Yapmis_Kullanicilar_ve_Avatar_Gibi_Kucuk_Ama_Etkili_Ayrintilar\"><span class=\"toc_number toc_depth_2\">4.1<\/span> Giri\u015f Yapm\u0131\u015f Kullan\u0131c\u0131lar ve Avatar Gibi K\u00fc\u00e7\u00fck Ama Etkili Ayr\u0131nt\u0131lar<\/a><\/li><li><a href=\"#Sepet_Odeme_ve_Hesabim_Canli_Kalmasi_Gerekenler\"><span class=\"toc_number toc_depth_2\">4.2<\/span> Sepet, \u00d6deme ve Hesab\u0131m: Canl\u0131 Kalmas\u0131 Gerekenler<\/a><\/li><li><a href=\"#Gorseller_CSSJS_ve_Yazi_Tipleri\"><span class=\"toc_number toc_depth_2\">4.3<\/span> G\u00f6rseller, CSS\/JS ve Yaz\u0131 Tipleri<\/a><\/li><\/ul><\/li><li><a href=\"#Edge_Kurallari_Ince_Ayarlarin_Kisa_Yolu\"><span class=\"toc_number toc_depth_1\">5<\/span> Edge Kurallar\u0131: \u0130nce Ayarlar\u0131n K\u0131sa Yolu<\/a><ul><li><a href=\"#Bypass_on_Cookie_Parametre_Temizleme_ve_TTL_Mantigi\"><span class=\"toc_number toc_depth_2\">5.1<\/span> Bypass on Cookie, Parametre Temizleme ve TTL Mant\u0131\u011f\u0131<\/a><\/li><li><a href=\"#POST_Istekleri_Basliklar_ve_Onbellek_Anahtari\"><span class=\"toc_number toc_depth_2\">5.2<\/span> POST \u0130stekleri, Ba\u015fl\u0131klar ve \u00d6nbellek Anahtar\u0131<\/a><\/li><li><a href=\"#Hatalarda_Sakin_Kalmak_Stale-If-Error_ve_Grace_Sureleri\"><span class=\"toc_number toc_depth_2\">5.3<\/span> Hatalarda Sakin Kalmak: Stale-If-Error ve Grace S\u00fcreleri<\/a><\/li><\/ul><\/li><li><a href=\"#Uygulamada_Adim_Adim_Test_Olcum_ve_Sorun_Giderme\"><span class=\"toc_number toc_depth_1\">6<\/span> Uygulamada Ad\u0131m Ad\u0131m: Test, \u00d6l\u00e7\u00fcm ve Sorun Giderme<\/a><ul><li><a href=\"#Tarayici_Araclari_ve_Basit_Baslik_Kontrolleri\"><span class=\"toc_number toc_depth_2\">6.1<\/span> Taray\u0131c\u0131 Ara\u00e7lar\u0131 ve Basit Ba\u015fl\u0131k Kontrolleri<\/a><\/li><li><a href=\"#Olctugun_Kadar_Iyisin\"><span class=\"toc_number toc_depth_2\">6.2<\/span> \u00d6l\u00e7t\u00fc\u011f\u00fcn Kadar \u0130yisin<\/a><\/li><li><a href=\"#Yayin_ve_Temizleme_Rutinleri\"><span class=\"toc_number toc_depth_2\">6.3<\/span> Yay\u0131n ve Temizleme Rutinleri<\/a><\/li><\/ul><\/li><li><a href=\"#WooCommercee_Ozel_Ince_Ayarlar_Sepetler_Mutlu_Kampanyalar_Akici\"><span class=\"toc_number toc_depth_1\">7<\/span> WooCommerce\u2019e \u00d6zel \u0130nce Ayarlar: Sepetler Mutlu, Kampanyalar Ak\u0131c\u0131<\/a><ul><li><a href=\"#Dinamik_Olani_Koru_Statik_Olani_Uzaga_Tasi\"><span class=\"toc_number toc_depth_2\">7.1<\/span> Dinamik Olan\u0131 Koru, Statik Olan\u0131 Uza\u011fa Ta\u015f\u0131<\/a><\/li><li><a href=\"#Parametre_Karmasasi_ve_Pazarlama_Etiketleri\"><span class=\"toc_number toc_depth_2\">7.2<\/span> Parametre Karma\u015fas\u0131 ve Pazarlama Etiketleri<\/a><\/li><li><a href=\"#Arka_Tarafi_Unutmadan\"><span class=\"toc_number toc_depth_2\">7.3<\/span> Arka Taraf\u0131 Unutmadan<\/a><\/li><\/ul><\/li><li><a href=\"#Guvenlik_SEO_ve_Kucuk_Puf_Noktalari\"><span class=\"toc_number toc_depth_1\">8<\/span> G\u00fcvenlik, SEO ve K\u00fc\u00e7\u00fck P\u00fcf Noktalar\u0131<\/a><ul><li><a href=\"#Ozel_Veriler_Ozel_Kurallar\"><span class=\"toc_number toc_depth_2\">8.1<\/span> \u00d6zel Veriler, \u00d6zel Kurallar<\/a><\/li><li><a href=\"#SEOya_Kisa_Bir_Selam\"><span class=\"toc_number toc_depth_2\">8.2<\/span> SEO\u2019ya K\u0131sa Bir Selam<\/a><\/li><li><a href=\"#Yan_Etkileri_Erken_Yakalamak\"><span class=\"toc_number toc_depth_2\">8.3<\/span> Yan Etkileri Erken Yakalamak<\/a><\/li><\/ul><\/li><li><a href=\"#Kapanis_Sakin_Tutarli_ve_Olculebilir_Bir_Onbellek_Duzeni\"><span class=\"toc_number toc_depth_1\">9<\/span> Kapan\u0131\u015f: Sakin, Tutarl\u0131 ve \u00d6l\u00e7\u00fclebilir Bir \u00d6nbellek D\u00fczeni<\/a><\/li><\/ul><\/div>\n<h2 id=\"section-1\"><span id=\"Hizli_Bir_Hikayeyle_Baslayalim_Bir_Kampanya_Gunu_ve_Nefes_Alan_Sayfalar\">H\u0131zl\u0131 Bir Hik\u00e2yeyle Ba\u015flayal\u0131m: Bir Kampanya G\u00fcn\u00fc ve Nefes Alan Sayfalar<\/span><\/h2>\n<p>Hi\u00e7 ba\u015f\u0131n\u0131za geldi mi? B\u00fcy\u00fck bir kampanya sabah\u0131, kahvenizi al\u0131p bilgisayar\u0131n ba\u015f\u0131na oturuyorsunuz, her \u015fey planl\u0131. Reklamlar a\u00e7\u0131k, i\u00e7erikler g\u00fcncel, WooCommerce sepetler dolacak diye umut y\u00fcksek. Sonra aniden grafikler z\u0131pl\u0131yor ama sayfa a\u00e7\u0131l\u0131\u015f s\u00fcreleri uzuyor, y\u00f6netim paneli a\u011f\u0131rla\u015f\u0131yor, sipari\u015f s\u00fcre\u00e7leri tekliyor. O an anlars\u0131n\u0131z: statik olanla dinamik olan\u0131 ay\u0131r\u0131p do\u011fru <strong>CDN \u00f6nbellekleme<\/strong> kurallar\u0131n\u0131 yazmad\u0131ysan\u0131z, trafi\u011fi kar\u015f\u0131lamak bir masaldan kabusa d\u00f6nebilir.<\/p>\n<p>Ben de benzer bir sabah ya\u015fay\u0131nca oturup &#8220;nerede, neyi, nas\u0131l cache\u2019lemeliyim?&#8221; diye her detay\u0131 didikledim. HTML ne kadar saklan\u0131r, g\u00f6rsellerin s\u00fcresi ne olmal\u0131, WooCommerce sepet ve \u00f6deme sayfalar\u0131 neden bu kadar hassas, peki <strong>Cache-Control<\/strong> ba\u015fl\u0131klar\u0131 nas\u0131l konu\u015fur, <strong>edge kurallar\u0131<\/strong> nerede devreye girer? Bug\u00fcn, tam da bunlar\u0131 anlatmak istiyorum. Mesela \u015f\u00f6yle d\u00fc\u015f\u00fcn\u00fcn: Ma\u011fazan\u0131z\u0131n vitrinini sabit tutup kasay\u0131 canl\u0131 b\u0131rakmak gibi. Yaz\u0131n\u0131n devam\u0131nda kavramlar\u0131 basit \u00f6rneklerle a\u00e7aca\u011f\u0131z, pratik ayar \u00f6nerileri verece\u011fiz ve sonunda elinizde uygulanabilir bir \u00e7er\u00e7eve olacak.<\/p>\n<h2 id=\"section-2\"><span id=\"CDN_Onbellekleme_Nedir_Nereden_Baslamali\">CDN \u00d6nbellekleme Nedir, Nereden Ba\u015flamal\u0131?<\/span><\/h2>\n<h3><span id=\"Vitrin_Depo_ve_Kasa_Benzetmesi\">Vitrin, Depo ve Kasa Benzetmesi<\/span><\/h3>\n<p>CDN\u2019i, ma\u011fazan\u0131z\u0131n farkl\u0131 \u015fehirlere yak\u0131n k\u00fc\u00e7\u00fck depolar\u0131 gibi d\u00fc\u015f\u00fcn\u00fcn. Ziyaret\u00e7i nerede olursa olsun vitrindeki g\u00f6rseller, CSS ve JS dosyalar\u0131 ona en yak\u0131n yerden sunulur. Bu sayede bekleme s\u00fcresi k\u0131sal\u0131r ve siteniz daha ak\u0131c\u0131 hissedilir. Ama kasada ger\u00e7ek zamanl\u0131 i\u015flemler d\u00f6ner; \u00fcr\u00fcn sto\u011fu g\u00fcncellenir, kullan\u0131c\u0131 giri\u015f yapar, kupon uygulan\u0131r. Yani her i\u00e7erik ayn\u0131 \u015fekilde \u00f6nbelle\u011fe at\u0131lmaz. Baz\u0131s\u0131 g\u00fcnlerce saklan\u0131r, baz\u0131s\u0131 anl\u0131k kal\u0131r, baz\u0131lar\u0131 ise hi\u00e7 saklanmaz.<\/p>\n<h3><span id=\"Statik_ve_Yari-Dinamik_Icerikler\">Statik ve Yar\u0131-Dinamik \u0130\u00e7erikler<\/span><\/h3>\n<p>G\u00f6rseller, yaz\u0131 tipleri, CSS\/JS gibi statik dosyalar genelde g\u00fcvenle uzun s\u00fcre cache\u2019de tutulur. HTML ise daha dikkat ister. Blog yaz\u0131lar\u0131n\u0131z s\u0131k de\u011fi\u015fmiyorsa, HTML\u2019yi k\u0131sa bir s\u00fcreli\u011fine saklamak iyi sonu\u00e7 verir. WooCommerce taraf\u0131nda \u00fcr\u00fcn sayfalar\u0131 bazen yar\u0131-dinamiktir; kampanya saatleri, dinamik rozetler, stok g\u00f6stergeleri gibi ayr\u0131nt\u0131lar de\u011fi\u015febilir. Burada mant\u0131k basit: \u00c7ok oynayan k\u0131s\u0131mlar\u0131 orijinden, stabil olanlar\u0131 CDN\u2019den verin.<\/p>\n<h3><span id=\"Olcegi_Buyutmenin_Sirri\">\u00d6l\u00e7e\u011fi B\u00fcy\u00fctmenin S\u0131rr\u0131<\/span><\/h3>\n<p>Y\u00fck alt\u0131nda nefes alman\u0131n iki yolu var: daha g\u00fc\u00e7l\u00fc sunucular ve daha ak\u0131ll\u0131 cache. \u0130kisi bir arada en tatl\u0131 dengeyi verir. Sunucuyu iyile\u015ftirirken, CDN taraf\u0131nda do\u011fru \u00f6nbellek ve <strong>edge<\/strong> kurallar\u0131yla s\u0131k gelen i\u00e7erikleri en \u00f6nde tutars\u0131n\u0131z. B\u00f6ylece PHP ve veritaban\u0131na daha az i\u015f d\u00fc\u015fer. Merak edenler i\u00e7in, arka tarafta makinenin kas g\u00fcc\u00fcn\u00fc planlamak ad\u0131na <a href=\"https:\/\/www.dchost.com\/blog\/woocommerce-kapasite-planlama-rehberi-vcpu-ram-iops-nasil-hesaplanir\/\">WooCommerce kapasite planlama rehberi<\/a> g\u00fczel bir e\u015flik\u00e7i olabilir.<\/p>\n<h2 id=\"section-3\"><span id=\"Cache-Control_Basliklari_Ne_Soylersek_CDN_Ne_Anlar\">Cache-Control Ba\u015fl\u0131klar\u0131: Ne S\u00f6ylersek CDN Ne Anlar?<\/span><\/h2>\n<h3><span id=\"Basitce_Max-Age_S-Maxage_ve_Arkadaslari\">Basit\u00e7e: Max-Age, S-Maxage ve Arkada\u015flar\u0131<\/span><\/h3>\n<p>Taray\u0131c\u0131 ile CDN\u2019e \u201cbu dosyay\u0131 ne kadar saklayabilirsin?\u201d diyen trafik \u0131\u015f\u0131klar\u0131 asl\u0131nda ba\u015fl\u0131klard\u0131r. <strong>Cache-Control<\/strong> i\u00e7indeki <strong>max-age<\/strong>, taray\u0131c\u0131ya konu\u015fur; <strong>s-maxage<\/strong> ise payla\u015f\u0131ml\u0131 \u00f6nbellek olan CDN\u2019e. HTML sayfalar i\u00e7in k\u0131sa, statik dosyalar i\u00e7in uzun s\u00fcreler vererek trafik y\u00fck\u00fcn\u00fc g\u00fczelce dengeleyebilirsiniz. \u00dcst\u00fcne bir de <strong>stale-while-revalidate<\/strong> kullan\u0131rsan\u0131z, ziyaret\u00e7i eski kopyay\u0131 an\u0131nda g\u00f6r\u00fcrken CDN arkada yenisini \u00e7ekmeye devam eder. Sanki vitrindeki \u00fcr\u00fcn\u00fc hemen g\u00f6sterip depodan yenisini getirir gibi.<\/p>\n<h3><span id=\"PublicPrivate_ETag_ve_Son_Degistirilme\">Public\/Private, ETag ve Son De\u011fi\u015ftirilme<\/span><\/h3>\n<p>HTML i\u00e7eriklerde genellikle <strong>public<\/strong> i\u015finizi g\u00f6r\u00fcr; ama kullan\u0131c\u0131ya \u00f6zel sayfalarda <strong>private<\/strong> der ve \u00f6nbelle\u011fe al\u0131nmamas\u0131n\u0131 istersiniz. De\u011fi\u015fiklik takibi i\u00e7in <strong>Last-Modified<\/strong> veya <strong>ETag<\/strong> devreye girer. ETag bir \u00e7e\u015fit parmak izi gibi d\u00fc\u015f\u00fcn\u00fcl\u00fcr; i\u00e7erik de\u011fi\u015firse parmak izi de de\u011fi\u015fir. Bu y\u00f6ntemler, CDN\u2019in ve taray\u0131c\u0131n\u0131n \u201cyenilemeye de\u011fer mi?\u201d sorusuna h\u0131zl\u0131 karar vermesine yard\u0131mc\u0131 olur. Daha derinine dalmak isterseniz, <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/HTTP\/Headers\/Cache-Control\" rel=\"nofollow noopener\" target=\"_blank\">MDN \u00fczerindeki Cache-Control ba\u015fl\u0131\u011f\u0131<\/a> sade bir referans niteli\u011finde.<\/p>\n<h3><span id=\"HTML_ile_Statik_Dosyalar_Arasindaki_Denge\">HTML ile Statik Dosyalar Aras\u0131ndaki Denge<\/span><\/h3>\n<p>Mesela \u015f\u00f6yle d\u00fc\u015f\u00fcn\u00fcn: CSS ve JS\u2019i uzun s\u00fcre saklay\u0131p isimlerine s\u00fcr\u00fcm parametresi eklerseniz, g\u00fcncelleme yapt\u0131\u011f\u0131n\u0131zda herkes yeni s\u00fcr\u00fcme ge\u00e7er. G\u00f6rseller i\u00e7in de benzer bir y\u00f6ntem iyi \u00e7al\u0131\u015f\u0131r. HTML\u2019de ise k\u0131sa <strong>max-age<\/strong> ve biraz <strong>stale-while-revalidate<\/strong> tatl\u0131 bir ayard\u0131r. \u00c7ok s\u0131k g\u00fcncellenen bir anasayfan\u0131z varsa, CDN\u2019e d\u00fc\u015f\u00fck TTL verip s\u0131k yenilemesini, taray\u0131c\u0131ya ise biraz daha esnek davranmas\u0131n\u0131 s\u00f6yleyebilirsiniz. Karar hep \u015funa bakar: Ziyaret\u00e7iye en h\u0131zl\u0131, en do\u011fru i\u00e7eri\u011fi nas\u0131l sunar\u0131m?<\/p>\n<h2 id=\"section-4\"><span id=\"WordPress_ve_WooCommercede_Neyi_Cachelemeli_Neyi_Bypass_Etmeli\">WordPress ve WooCommerce\u2019de Neyi Cache\u2019lemeli, Neyi Bypass Etmeli?<\/span><\/h2>\n<h3><span id=\"Giris_Yapmis_Kullanicilar_ve_Avatar_Gibi_Kucuk_Ama_Etkili_Ayrintilar\">Giri\u015f Yapm\u0131\u015f Kullan\u0131c\u0131lar ve Avatar Gibi K\u00fc\u00e7\u00fck Ama Etkili Ayr\u0131nt\u0131lar<\/span><\/h3>\n<p>WordPress\u2019te y\u00f6netici \u00e7ubu\u011fu g\u00f6r\u00fcnen, giri\u015f yapm\u0131\u015f kullan\u0131c\u0131lar\u0131n sayfalar\u0131n\u0131 cache\u2019e koymak genelde yanl\u0131\u015ft\u0131r. \u00c7\u00fcnk\u00fc her kullan\u0131c\u0131ya \u00f6zel k\u00fc\u00e7\u00fck de olsa farkl\u0131l\u0131klar vard\u0131r. WooCommerce\u2019de de sepet ve \u00f6deme ad\u0131mlar\u0131, kullan\u0131c\u0131 oturumlar\u0131 gibi alanlar hassast\u0131r. Bu y\u00fczden \u201c<strong>wordpress_logged_in_<\/strong>\u201d gibi oturum \u00e7erezleri varsa HTML \u00f6nbelle\u011fi devre d\u0131\u015f\u0131 b\u0131rakmak gerekir. Ayn\u0131 mant\u0131k, sepetle ilgili \u201c<strong>woocommerce_cart_hash<\/strong>\u201d, \u201c<strong>woocommerce_items_in_cart<\/strong>\u201d ve \u201c<strong>wp_woocommerce_session_<\/strong>\u201d gibi \u00e7erezlerde de ge\u00e7erlidir. Bu \u00e7erezler tespit edildi\u011finde HTML\u2019yi orijinden vermek, sorunlar\u0131 daha ba\u015ftan keser.<\/p>\n<h3><span id=\"Sepet_Odeme_ve_Hesabim_Canli_Kalmasi_Gerekenler\">Sepet, \u00d6deme ve Hesab\u0131m: Canl\u0131 Kalmas\u0131 Gerekenler<\/span><\/h3>\n<p>URL taraf\u0131nda da benzer bir titizlik iyi sonu\u00e7 verir. Sepet, \u00f6deme ve hesab\u0131m sayfalar\u0131n\u0131n HTML\u2019sini \u00f6nbelle\u011fe atmak, kampanya saatinde hatal\u0131 toplamlar ve garip oturum sorunlar\u0131 do\u011furabilir. Bu sayfalar\u0131 kapsayan desenleri <strong>edge kural\u0131<\/strong>yla \u201cbypass\u201d etmeniz yeterli olur. \u00dcr\u00fcn sayfalar\u0131nda ise, stok g\u00f6stergesi gibi \u00f6\u011feler s\u0131k de\u011fi\u015fiyorsa k\u0131sa TTL tercih edebilirsiniz. Baz\u0131 eklentiler ayr\u0131ca dinamik par\u00e7alar \u00fcretir; bu par\u00e7alar\u0131n HTML i\u00e7ine g\u00f6m\u00fclmedi\u011fi, gerekti\u011finde ayr\u0131 istekle geldi\u011fi bir tasar\u0131m daha esnek \u00e7al\u0131\u015f\u0131r.<\/p>\n<h3><span id=\"Gorseller_CSSJS_ve_Yazi_Tipleri\">G\u00f6rseller, CSS\/JS ve Yaz\u0131 Tipleri<\/span><\/h3>\n<p>Burada i\u015fler keyifli. Versiyonlanm\u0131\u015f CSS\/JS dosyalar\u0131na uzun bir <strong>max-age<\/strong> ve <strong>s-maxage<\/strong> verebilirsiniz. Yaz\u0131 tipleri ve b\u00fcy\u00fck g\u00f6rseller i\u00e7in de benzer uzun TTL\u2019ler genelde g\u00fcvenlidir. CDN taraf\u0131nda \u201cdosya uzant\u0131s\u0131na g\u00f6re\u201d \u00f6nbellek kural\u0131 tan\u0131mlamak, y\u00f6netimi basitle\u015ftirir. De\u011fi\u015fiklik an\u0131nda yeni s\u00fcr\u00fcmleri devreye almak i\u00e7in dosya ismi veya sorgu parametresinde s\u00fcr\u00fcmleme stratejiniz olsun, gerisi ya\u011f gibi akar.<\/p>\n<p>Bu b\u00f6l\u00fcmdeki pratik d\u00fczenlemeleri ad\u0131m ad\u0131m g\u00f6rmek isterseniz, <a href=\"https:\/\/www.dchost.com\/blog\/wordpress-icin-cdn-onbellek-kurallari-nasil-kurulur-woocommercede-html-cache-bypass-ve-edge-ayarlariyla-uctan-uca-hiz\/\">WordPress i\u00e7in CDN \u00f6nbellek kurallar\u0131yla u\u00e7tan uca h\u0131z<\/a> yaz\u0131s\u0131 uygulanabilir \u00f6rneklerle g\u00fczel e\u015flik ediyor. Ayr\u0131ca arka u\u00e7ta PHP-FPM, OPcache, Redis ve veritaban\u0131 ayarlar\u0131n\u0131 s\u0131k\u0131la\u015ft\u0131rmak i\u00e7in <a href=\"https:\/\/www.dchost.com\/blog\/wordpress-icin-sunucu-tarafi-optimizasyon-php-fpm-opcache-redis-ve-mysql-ile-neyi-ne-zaman-nasil-ayarlamalisin\/\">sunucu taraf\u0131 optimizasyon rehberi<\/a> ile CDN stratejisini birlikte d\u00fc\u015f\u00fcnmek, her katmanda dengeli bir yap\u0131 kurman\u0131z\u0131 sa\u011flar.<\/p>\n<h2 id=\"section-5\"><span id=\"Edge_Kurallari_Ince_Ayarlarin_Kisa_Yolu\">Edge Kurallar\u0131: \u0130nce Ayarlar\u0131n K\u0131sa Yolu<\/span><\/h2>\n<h3><span id=\"Bypass_on_Cookie_Parametre_Temizleme_ve_TTL_Mantigi\">Bypass on Cookie, Parametre Temizleme ve TTL Mant\u0131\u011f\u0131<\/span><\/h3>\n<p>Edge kurallar\u0131, &#8220;\u015fu ko\u015ful varsa \u015f\u00f6yle davran&#8221; demenin pratik yolu. Diyelim ki istek, giri\u015f \u00e7erezi ta\u015f\u0131yor; o zaman HTML\u2019yi \u00f6nbelle\u011fe koyma. Ba\u015fka bir senaryo: UTM gibi pazarlama parametreleriyle gelen sayfalar, i\u00e7erik olarak ayn\u0131. Burada parametreleri yok say\u0131p ayn\u0131 \u00f6nbellek anahtar\u0131n\u0131 kullanmak harikalar yarat\u0131r. Trafik dalgalar\u0131nda nefes pay\u0131 a\u00e7ar. Keza \u201c<strong>preview=true<\/strong>\u201d veya \u201c<strong>add-to-cart<\/strong>\u201d gibi URL ipu\u00e7lar\u0131 yakaland\u0131\u011f\u0131nda da bypass demek, tutarl\u0131 bir deneyim sa\u011flar.<\/p>\n<h3><span id=\"POST_Istekleri_Basliklar_ve_Onbellek_Anahtari\">POST \u0130stekleri, Ba\u015fl\u0131klar ve \u00d6nbellek Anahtar\u0131<\/span><\/h3>\n<p>Form g\u00f6nderen POST isteklerinde cache devreye girmez; bu iyi bir \u015feydir. GET isteklerinde ise baz\u0131 ba\u015fl\u0131klar\u0131 anahtara dahil edip etmeme karar\u0131 \u00f6nemlidir. \u00d6rne\u011fin \u201cAccept-Language\u201d veya \u201cCookie\u201d gibi ba\u015fl\u0131klar her ziyaret\u00e7ide farkl\u0131d\u0131r; bunlar\u0131 anahtara dahil etmek, \u00f6nbelle\u011fin par\u00e7alanmas\u0131na yol a\u00e7abilir. \u00c7erez \u00fczerinden ko\u015ful koyup HTML \u00f6nbelle\u011fi sadece anonim kullan\u0131c\u0131lar i\u00e7in etkin tutmak, hem basit hem etkilidir. CDN\u2019in kendi d\u00f6k\u00fcmantasyonunda \u00f6nbellek anahtar\u0131n\u0131 y\u00f6netmek \u00fczerine iyi pratikler bulabilirsiniz; mesela <a href=\"https:\/\/developers.cloudflare.com\/cache\/about\/\" rel=\"nofollow noopener\" target=\"_blank\">Cloudflare&#8217;\u0131n cache davran\u0131\u015f\u0131 hakk\u0131nda k\u0131lavuzu<\/a> fikir verir.<\/p>\n<h3><span id=\"Hatalarda_Sakin_Kalmak_Stale-If-Error_ve_Grace_Sureleri\">Hatalarda Sakin Kalmak: Stale-If-Error ve Grace S\u00fcreleri<\/span><\/h3>\n<p>Bazen orijin bir an sendeleyebilir. Tam o anda ziyaret\u00e7iye bo\u015f sayfa g\u00f6stermek yerine \u201ceski ama i\u015fe yarar\u201d bir kopyay\u0131 sunmak \u00e7ok k\u0131ymetli. <strong>stale-if-error<\/strong> ve benzeri esneklikler burada devreye girer. Bir ba\u015fka p\u00fcf noktas\u0131 da, yay\u0131n yaparken k\u0131sa bir s\u00fcreli\u011fine CDN taraf\u0131nda &#8220;no-cache&#8221; demek yerine, TTL\u2019i ufak bir aral\u0131\u011fa \u00e7ekip de\u011fi\u015fikli\u011fin yay\u0131lmas\u0131n\u0131 beklemek. B\u00f6ylece yay\u0131n sonras\u0131 trafik daha yumu\u015fak akar, riskleriniz azal\u0131r.<\/p>\n<h2 id=\"section-6\"><span id=\"Uygulamada_Adim_Adim_Test_Olcum_ve_Sorun_Giderme\">Uygulamada Ad\u0131m Ad\u0131m: Test, \u00d6l\u00e7\u00fcm ve Sorun Giderme<\/span><\/h2>\n<h3><span id=\"Tarayici_Araclari_ve_Basit_Baslik_Kontrolleri\">Taray\u0131c\u0131 Ara\u00e7lar\u0131 ve Basit Ba\u015fl\u0131k Kontrolleri<\/span><\/h3>\n<p>\u0130lk i\u015f, hangi iste\u011fin nereden geldi\u011fini g\u00f6rmek. Taray\u0131c\u0131 geli\u015ftirici ara\u00e7lar\u0131nda a\u011f sekmesine bak\u0131p yan\u0131t ba\u015fl\u0131klar\u0131n\u0131 inceleyin. \u201chit\u201d, \u201cmiss\u201d, \u201cbypass\u201d gibi ifadeler genellikle CDN yan\u0131t\u0131na i\u015flenir. K\u00fc\u00e7\u00fck bir deneme i\u00e7in komut sat\u0131r\u0131nda ba\u015fl\u0131klara g\u00f6z atmak da i\u015f g\u00f6r\u00fcr. Burada ama\u00e7, hangi kural\u0131n ne sonu\u00e7 verdi\u011fini, hangi sayfalar\u0131n cache\u2019i doldurdu\u011funu anlamakt\u0131r. K\u00fc\u00e7\u00fck bir de\u011fi\u015fiklik yap\u0131p etkisini g\u00f6zlemek, ayarlar\u0131 sezgisel hale getirir.<\/p>\n<h3><span id=\"Olctugun_Kadar_Iyisin\">\u00d6l\u00e7t\u00fc\u011f\u00fcn Kadar \u0130yisin<\/span><\/h3>\n<p>Sayfa a\u00e7\u0131l\u0131\u015f s\u00fcreleri, ilk bayt s\u00fcresi ve g\u00f6rsellerin y\u00fcklenme hissi\u2026 Bunlar, ziyaret\u00e7inin akl\u0131ndaki \u201cbu site h\u0131zl\u0131\u201d karar\u0131n\u0131 \u015fekillendirir. CDN ile do\u011fru \u00f6nbellek stratejisi kurdu\u011funuzda, ilk anlaml\u0131 boyama dedi\u011fimiz o \u201caha\u201d an\u0131 h\u0131zlan\u0131r. Arka tarafta veritaban\u0131 ve PHP y\u00fck\u00fc azal\u0131r. Bunu hissetmenin basit yollar\u0131ndan biri, trafik dalgas\u0131 ba\u015flad\u0131\u011f\u0131nda kaynak kullan\u0131m\u0131n\u0131 izlemektir. Kaynaklar\u0131n daha sakin kald\u0131\u011f\u0131n\u0131 g\u00f6r\u00fcrseniz, do\u011fru yoldas\u0131n\u0131z demektir.<\/p>\n<h3><span id=\"Yayin_ve_Temizleme_Rutinleri\">Yay\u0131n ve Temizleme Rutinleri<\/span><\/h3>\n<p>Yaz\u0131 yay\u0131nlad\u0131\u011f\u0131n\u0131zda, \u00fcr\u00fcn bilgisini g\u00fcncelledi\u011finizde veya temada de\u011fi\u015fiklik yapt\u0131\u011f\u0131n\u0131zda CDN \u00f6nbelle\u011fini tamamen bo\u015faltmak yerine \u201cgerekli kadar\u201d temizlemek iyi bir al\u0131\u015fkanl\u0131kt\u0131r. \u00d6rne\u011fin yaln\u0131zca ilgili URL\u2019leri, etiket veya yol baz\u0131nda temizlemek m\u00fcmk\u00fcnse bunu tercih edin. B\u00f6ylece trafi\u011fin tamam\u0131n\u0131 yeniden \u0131s\u0131tmak zorunda kalmazs\u0131n\u0131z. WordPress d\u00fcnyas\u0131na yeni ad\u0131m atanlar i\u00e7in <a href=\"https:\/\/wordpress.org\/support\/article\/optimization-caching\/\" rel=\"nofollow noopener\" target=\"_blank\">WordPress rehberindeki basit \u00f6nbelle\u011fe alma \u00f6nerileri<\/a> ba\u015flang\u0131\u00e7 bak\u0131\u015f\u0131 sunar.<\/p>\n<h2 id=\"section-7\"><span id=\"WooCommercee_Ozel_Ince_Ayarlar_Sepetler_Mutlu_Kampanyalar_Akici\">WooCommerce\u2019e \u00d6zel \u0130nce Ayarlar: Sepetler Mutlu, Kampanyalar Ak\u0131c\u0131<\/span><\/h2>\n<h3><span id=\"Dinamik_Olani_Koru_Statik_Olani_Uzaga_Tasi\">Dinamik Olan\u0131 Koru, Statik Olan\u0131 Uza\u011fa Ta\u015f\u0131<\/span><\/h3>\n<p>WooCommerce\u2019de sepet, \u00f6deme, \u201cHesab\u0131m\u201d gibi sayfalar daima canl\u0131 kalmal\u0131. Burada edge kural\u0131 ile \u00e7erez ko\u015fullar\u0131n\u0131 tespit etmek kritik. \u201c<strong>woocommerce_items_in_cart<\/strong>\u201d veya \u201c<strong>wp_woocommerce_session_<\/strong>\u201d gibi sinyaller varsa HTML\u2019ye dokunmay\u0131n. \u00dcr\u00fcn detaylar\u0131nda ise k\u00fc\u00e7\u00fck bir piyano ayar\u0131 yeterli: \u00e7ok s\u0131k g\u00fcncellenen fiyat\/indirim gibi \u00f6\u011feler varsa k\u0131sa bir TTL, daha stabil i\u00e7eriklerde ise biraz daha c\u00f6mert davranabilirsiniz. Kampanya saatinde yo\u011fun trafik ald\u0131\u011f\u0131n\u0131zda bu fark, sunucunun nefes almas\u0131n\u0131 sa\u011flar.<\/p>\n<h3><span id=\"Parametre_Karmasasi_ve_Pazarlama_Etiketleri\">Parametre Karma\u015fas\u0131 ve Pazarlama Etiketleri<\/span><\/h3>\n<p>UTM parametreleri i\u015fin pazarlama kalbi. Ama \u00f6nbellek taraf\u0131nda ayn\u0131 sayfay\u0131 y\u00fczlerce farkl\u0131 anahtara b\u00f6lmek istemeyiz. Edge kural\u0131ndan \u201cutm_\u201d ile ba\u015flayan parametreleri g\u00f6z ard\u0131 diyerek ayn\u0131 sayfan\u0131n tek bir \u00f6nbellek anahtar\u0131nda ya\u015famas\u0131n\u0131 sa\u011flayabilirsiniz. Bu, hem CDN hit oran\u0131n\u0131 y\u00fckseltir hem de \u0131s\u0131tma dedi\u011fimiz s\u00fcre\u00e7 daha stabil ilerler. Yan etkileri azaltmak i\u00e7in yay\u0131n \u00f6ncesi k\u00fc\u00e7\u00fck bir pilot sayfada deneme yapmak iyi bir fikirdir.<\/p>\n<h3><span id=\"Arka_Tarafi_Unutmadan\">Arka Taraf\u0131 Unutmadan<\/span><\/h3>\n<p>\u00d6nbellek tek ba\u015f\u0131na kahraman de\u011fildir; arka tarafta da motoru g\u00fc\u00e7lendirmek gerekir. PHP s\u00fcre\u00e7leri, OPcache, Redis ve veritaban\u0131 ayarlar\u0131n\u0131 bir b\u00fct\u00fcn olarak d\u00fc\u015f\u00fcn\u00fcn. Uygulamada bunlar\u0131 nas\u0131l ayarlayaca\u011f\u0131n\u0131z\u0131 merak ediyorsan\u0131z, <a href=\"https:\/\/www.dchost.com\/blog\/wordpress-icin-sunucu-tarafi-optimizasyon-php-fpm-opcache-redis-ve-mysql-ile-neyi-ne-zaman-nasil-ayarlamalisin\/\">PHP-FPM, OPcache, Redis ve MySQL ile sunucu taraf\u0131 optimizasyon<\/a> yaz\u0131s\u0131, CDN stratejinizi tamamlayan harika bir rehberdir.<\/p>\n<h2 id=\"section-8\"><span id=\"Guvenlik_SEO_ve_Kucuk_Puf_Noktalari\">G\u00fcvenlik, SEO ve K\u00fc\u00e7\u00fck P\u00fcf Noktalar\u0131<\/span><\/h2>\n<h3><span id=\"Ozel_Veriler_Ozel_Kurallar\">\u00d6zel Veriler, \u00d6zel Kurallar<\/span><\/h3>\n<p>Kullan\u0131c\u0131ya \u00f6zel veriler s\u00f6z konusuysa, m\u00fcmk\u00fcn oldu\u011funca bu alanlar\u0131 cache d\u0131\u015f\u0131nda b\u0131rak\u0131n. \u201cPrivate\u201d i\u015faretleri ve \u00e7erez ko\u015fullar\u0131yla HTML\u2019nin yanl\u0131\u015f kopyalanmas\u0131n\u0131n \u00f6n\u00fcne ge\u00e7ebilirsiniz. 404 ve 301 gibi yan\u0131tlar\u0131n da makul bir s\u00fcre \u00f6nbelle\u011fe al\u0131nmas\u0131 sayfa ge\u00e7i\u015flerini h\u0131zland\u0131r\u0131r; ama 404\u2019ler uzun s\u00fcreli tutulmamal\u0131 ki yeni olu\u015fturdu\u011funuz sayfalar h\u0131zl\u0131ca g\u00f6r\u00fcn\u00fcr olsun. G\u00fcvenlikle ilgili ba\u015fl\u0131klar\u0131 ayr\u0131 bir \u00e7er\u00e7evede ele almak isterseniz, HTTP taraf\u0131ndaki iyi uygulamalar her zaman i\u015finizi kolayla\u015ft\u0131r\u0131r.<\/p>\n<h3><span id=\"SEOya_Kisa_Bir_Selam\">SEO\u2019ya K\u0131sa Bir Selam<\/span><\/h3>\n<p>Arama motorlar\u0131 h\u0131zdan ho\u015flan\u0131r ama tazelik de \u00f6nemlidir. HTML i\u00e7in k\u0131sa bir TTL, g\u00f6rseller ve statikler i\u00e7in uzun bir TTL genellikle iyi bir uzla\u015fmad\u0131r. Canonical ve y\u00f6nlendirme ak\u0131\u015f\u0131n\u0131 tutarl\u0131 tutarsan\u0131z, CDN katman\u0131 \u00fcst\u00fcnde de her \u015fey uyumlu ilerler. Baz\u0131 CDN\u2019ler &#8220;cache key&#8221; \u00fczerinde k\u00fc\u00e7\u00fck oynamalara izin verir; bu sayede ayn\u0131 i\u00e7eri\u011fi g\u00f6steren farkl\u0131 URL desenlerini birle\u015ftirerek daha temiz bir \u00f6nbellek yap\u0131s\u0131 kurabilirsiniz. Detaylar\u0131 sa\u011flay\u0131c\u0131n\u0131z\u0131n d\u00f6k\u00fcmantasyonunda bulmak m\u00fcmk\u00fcn; \u00f6rne\u011fin <a href=\"https:\/\/developers.cloudflare.com\/cache\/about\/\" rel=\"nofollow noopener\" target=\"_blank\">Cloudflare d\u00f6k\u00fcmanlar\u0131<\/a> pratik \u00f6rnekler sunar.<\/p>\n<h3><span id=\"Yan_Etkileri_Erken_Yakalamak\">Yan Etkileri Erken Yakalamak<\/span><\/h3>\n<p>\u00d6zellikle kampanya g\u00fcnleri \u00f6ncesinde staging ortam\u0131nda senaryolar\u0131 \u00e7al\u0131\u015ft\u0131rmak, en iyi kurtar\u0131c\u0131d\u0131r. Sepete ekle, kupon uygula, giri\u015f yap, \u00e7\u0131k\u0131\u015f yap, \u00f6deme dene\u2026 Her ak\u0131\u015fta beklenen davran\u0131\u015f\u0131 g\u00f6rd\u00fc\u011f\u00fcn\u00fczden emin olun. Edge kural\u0131 k\u00fc\u00e7\u00fck bir hata ile \u00e7ok \u015fey de\u011fi\u015ftirebilir. Bir de k\u00fc\u00e7\u00fck hat\u0131rlatma: Yay\u0131n saatlerinde, \u00f6nemli sayfalar i\u00e7in CDN\u2019de kontroll\u00fc bir temizleme yapmak, panikle toplu purge etmekten daha iyi sonu\u00e7 verir.<\/p>\n<h2 id=\"section-9\"><span id=\"Kapanis_Sakin_Tutarli_ve_Olculebilir_Bir_Onbellek_Duzeni\">Kapan\u0131\u015f: Sakin, Tutarl\u0131 ve \u00d6l\u00e7\u00fclebilir Bir \u00d6nbellek D\u00fczeni<\/span><\/h2>\n<p>Bir ma\u011fazay\u0131 d\u00fczenler gibi d\u00fc\u015f\u00fcn\u00fcn: Vitrin \u015f\u0131k ve ula\u015f\u0131labilir, kasa h\u0131zl\u0131 ve g\u00fcvenli. <strong>CDN \u00f6nbellekleme<\/strong> ile <strong>Cache-Control<\/strong> ba\u015fl\u0131klar\u0131 ve <strong>edge kurallar\u0131<\/strong> do\u011fru konu\u015ftu\u011funda, WordPress ve WooCommerce siteniz trafi\u011fi daha rahat kar\u015f\u0131lar. HTML\u2019yi k\u0131sa s\u00fcreli tutmak, statikleri uzun saklamak, giri\u015f yapm\u0131\u015f kullan\u0131c\u0131lar\u0131 ve sepet\/\u00f6deme ad\u0131mlar\u0131n\u0131 bypass etmek; i\u015fin \u00f6z\u00fcn\u00fc bu birka\u00e7 c\u00fcmlede toplayabiliriz. \u00dcst\u00fcne parametre temizli\u011fi ve \u00e7erez ko\u015fullar\u0131 gelince, sistem profesyonel bir d\u00fczene kavu\u015fur.<\/p>\n<p>Pratik bir ipucu seti b\u0131rakarak bitireyim: Yay\u0131n \u00f6ncesi staging\u2019de test edin, canl\u0131da kademeli temizlik yap\u0131n, \u00f6l\u00e7\u00fcmleri takip edin ve sorun g\u00f6rd\u00fc\u011f\u00fcn\u00fcz alanlarda TTL\u2019leri k\u00fc\u00e7\u00fck ad\u0131mlarla ayarlay\u0131n. E\u011fer ma\u011fazan\u0131z b\u00fcy\u00fcyor ve arka plandaki kapasiteyi planlamak istiyorsan\u0131z, <a href=\"https:\/\/www.dchost.com\/blog\/woocommerce-kapasite-planlama-rehberi-vcpu-ram-iops-nasil-hesaplanir\/\">\u00f6l\u00e7ek planlama \u00fczerine rehberi<\/a> g\u00f6zden ge\u00e7irmek iyi fikir. CDN taraf\u0131ndaki pratik kural \u00f6rneklerine de yeniden bakmak isterseniz, <a href=\"https:\/\/www.dchost.com\/blog\/wordpress-icin-cdn-onbellek-kurallari-nasil-kurulur-woocommercede-html-cache-bypass-ve-edge-ayarlariyla-uctan-uca-hiz\/\">WordPress i\u00e7in CDN \u00f6nbellek kurallar\u0131yla u\u00e7tan uca h\u0131z<\/a> yaz\u0131s\u0131 ad\u0131m ad\u0131m ilerliyor. Umar\u0131m bu yaz\u0131, bir sonraki kampanya sabah\u0131 kahvenizi keyifle yudumlarken sayfalar\u0131n\u0131z\u0131n ya\u011f gibi akmas\u0131na yard\u0131m eder. Bir dahaki yaz\u0131da g\u00f6r\u00fc\u015fmek \u00fczere.<\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>\u0130&ccedil;indekiler1 H\u0131zl\u0131 Bir Hik\u00e2yeyle Ba\u015flayal\u0131m: Bir Kampanya G\u00fcn\u00fc ve Nefes Alan Sayfalar2 CDN \u00d6nbellekleme Nedir, Nereden Ba\u015flamal\u0131?2.1 Vitrin, Depo ve Kasa Benzetmesi2.2 Statik ve Yar\u0131-Dinamik \u0130\u00e7erikler2.3 \u00d6l\u00e7e\u011fi B\u00fcy\u00fctmenin S\u0131rr\u01313 Cache-Control Ba\u015fl\u0131klar\u0131: Ne S\u00f6ylersek CDN Ne Anlar?3.1 Basit\u00e7e: Max-Age, S-Maxage ve Arkada\u015flar\u01313.2 Public\/Private, ETag ve Son De\u011fi\u015ftirilme3.3 HTML ile Statik Dosyalar Aras\u0131ndaki Denge4 WordPress ve WooCommerce\u2019de [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":1341,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[26],"tags":[],"class_list":["post-1340","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\/1340","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=1340"}],"version-history":[{"count":0,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/posts\/1340\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/media\/1341"}],"wp:attachment":[{"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/media?parent=1340"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/categories?post=1340"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/tags?post=1340"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}