{"id":15932,"date":"2026-06-20T15:49:20","date_gmt":"2026-06-20T12:49:20","guid":{"rendered":"https:\/\/www.ihs.com.tr\/blog\/?p=15932"},"modified":"2026-06-20T15:49:20","modified_gmt":"2026-06-20T12:49:20","slug":"wordpress-htaccess-dosyasi-nedir","status":"publish","type":"post","link":"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/","title":{"rendered":"WordPress .htaccess Dosyas\u0131 Nedir? G\u00fcvenlik ve URL Y\u00f6nlendirme Ayarlar\u0131 Nelerdir?"},"content":{"rendered":"<p>WordPress tabanl\u0131 bir web sitesi y\u00f6netiyorsan\u0131z, .htaccess dosyas\u0131n\u0131n g\u00fcc\u00fcn\u00fc anlamak ve do\u011fru \u015fekilde kullanmak, sitenizin hem g\u00fcvenli\u011fini hem de performans\u0131n\u0131 \u00f6nemli \u00f6l\u00e7\u00fcde art\u0131rabilir. Genellikle g\u00f6z ard\u0131 edilen bu k\u00fc\u00e7\u00fck metin dosyas\u0131, sunucunuzun davran\u0131\u015f\u0131n\u0131 kontrol eden g\u00fc\u00e7l\u00fc bir ara\u00e7t\u0131r. URL y\u00f6nlendirmelerinden g\u00fcvenlik katmanlar\u0131na, \u00f6nbellekleme ayarlar\u0131ndan eri\u015fim k\u0131s\u0131tlamalar\u0131na kadar pek \u00e7ok kritik i\u015flemi .htaccess \u00fczerinden y\u00f6netebilirsiniz. Bu dosya, web sitenizin temel yap\u0131land\u0131rma anahtar\u0131d\u0131r ve do\u011fru yap\u0131land\u0131r\u0131ld\u0131\u011f\u0131nda SEO, kullan\u0131c\u0131 deneyimi ve site h\u0131z\u0131 gibi alanlarda size b\u00fcy\u00fck avantajlar sa\u011flar.<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_77 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">\u0130\u00e7erik Tablosu<\/p>\n<label for=\"ez-toc-cssicon-toggle-item-6a36b3053d9e8\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\" id=\"ez-toc-cssicon-toggle-item-6a36b3053d9e8\" aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#htaccess-Dosyasinin-Temelleri\" >.htaccess Dosyas\u0131n\u0131n Temelleri<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#htaccess-Dosyasi-Nedir-ve-Ne-Ise-Yarar\" >.htaccess Dosyas\u0131 Nedir ve Ne \u0130\u015fe Yarar?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#htaccess-Dosyasinin-Sunucu-Yapisindaki-Yeri-ve-Calisma-Mantigi\" >.htaccess Dosyas\u0131n\u0131n Sunucu Yap\u0131s\u0131ndaki Yeri ve \u00c7al\u0131\u015fma Mant\u0131\u011f\u0131<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#WordPress-Kurulumunda-htaccess-Dosyasinin-Rolu\" >WordPress Kurulumunda .htaccess Dosyas\u0131n\u0131n Rol\u00fc<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#htaccess-Dosyasi-Nasil-Bulunur-ve-Goruntulenir\" >.htaccess Dosyas\u0131 Nas\u0131l Bulunur ve G\u00f6r\u00fcnt\u00fclenir?<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#WordPress-Varsayilan-htaccess-Ayarlari-ve-Kalici-Baglantilar-Permalinks\" >WordPress Varsay\u0131lan .htaccess Ayarlar\u0131 ve Kal\u0131c\u0131 Ba\u011flant\u0131lar (Permalinks)<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#WordPress-Tarafindan-Otomatik-Olusturulan-Standart-htaccess-Kodlari\" >WordPress Taraf\u0131ndan Otomatik Olu\u015fturulan Standart .htaccess Kodlar\u0131<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#Kalici-Baglanti-Permalink-Yapisinin-htaccess-Dosyasina-Etkisi\" >Kal\u0131c\u0131 Ba\u011flant\u0131 (Permalink) Yap\u0131s\u0131n\u0131n .htaccess Dosyas\u0131na Etkisi<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#Kalici-Baglanti-Ayarlarini-Degistirdikten-Sonra-htaccess-Dosyasini-Guncelleme\" >Kal\u0131c\u0131 Ba\u011flant\u0131 Ayarlar\u0131n\u0131 De\u011fi\u015ftirdikten Sonra .htaccess Dosyas\u0131n\u0131 G\u00fcncelleme<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#htaccess-ile-WordPress-Guvenligini-Artirma-Yontemleri\" >.htaccess ile WordPress G\u00fcvenli\u011fini Art\u0131rma Y\u00f6ntemleri<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#Yonetici-Paneli-wp-admin-Klasorunu-Koruma\" >Y\u00f6netici Paneli (wp-admin) Klas\u00f6r\u00fcn\u00fc Koruma<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#Kritik-WordPress-Dosyalarina-Erisimi-Engelleme\" >Kritik WordPress Dosyalar\u0131na Eri\u015fimi Engelleme<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#Dizin-Listelemeyi-Directory-Browsing-Kapatma\" >Dizin Listelemeyi (Directory Browsing) Kapatma<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#PHP-Kodlarinin-Belirli-Klasorlerde-Calismasini-Engelleme\" >PHP Kodlar\u0131n\u0131n Belirli Klas\u00f6rlerde \u00c7al\u0131\u015fmas\u0131n\u0131 Engelleme<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#Hotlinking-Resim-ve-Dosya-Hirsizligi-Onleme\" >Hotlinking (Resim ve Dosya H\u0131rs\u0131zl\u0131\u011f\u0131) \u00d6nleme<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#Kotu-Niyetli-Botlari-ve-Istenmeyen-Ziyaretcileri-Engelleme\" >K\u00f6t\u00fc Niyetli Botlar\u0131 ve \u0130stenmeyen Ziyaret\u00e7ileri Engelleme<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-17\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#XSS-Cross-Site-Scripting-Saldirilarina-Karsi-Temel-Koruma\" >XSS (Cross-Site Scripting) Sald\u0131r\u0131lar\u0131na Kar\u015f\u0131 Temel Koruma<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-18\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#htaccess-ile-Gelismis-URL-Yonlendirme-Redirection-Ayarlari\" >.htaccess ile Geli\u015fmi\u015f URL Y\u00f6nlendirme (Redirection) Ayarlar\u0131<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-19\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#Yonlendirme-Turleri-Arasindaki-Farklar\" >Y\u00f6nlendirme T\u00fcrleri Aras\u0131ndaki Farklar<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-20\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#Yaygin-Yonlendirme-Senaryolari\" >Yayg\u0131n Y\u00f6nlendirme Senaryolar\u0131<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-21\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#Alan-Adi-Yapisini-Standartlastirma\" >Alan Ad\u0131 Yap\u0131s\u0131n\u0131 Standartla\u015ft\u0131rma<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-22\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#HTTPSye-SSL-Zorunlu-Yonlendirme-Yapma\" >HTTPS&#8217;ye (SSL) Zorunlu Y\u00f6nlendirme Yapma<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-23\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#Ozel-404-Hata-Sayfasi-Olusturma-ve-Yonlendirme\" >\u00d6zel 404 Hata Sayfas\u0131 Olu\u015fturma ve Y\u00f6nlendirme<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-24\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#htaccess-ile-WordPress-Performans-Optimizasyonu\" >.htaccess ile WordPress Performans Optimizasyonu<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-25\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#Tarayici-Onbellekleme-Browser-Caching-Ozelligini-Etkinlestirme\" >Taray\u0131c\u0131 \u00d6nbellekleme (Browser Caching) \u00d6zelli\u011fini Etkinle\u015ftirme<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-26\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#Gzip-Sikistirmasi-ile-Sayfa-Boyutlarini-Kucultme\" >Gzip S\u0131k\u0131\u015ft\u0131rmas\u0131 ile Sayfa Boyutlar\u0131n\u0131 K\u00fc\u00e7\u00fcltme<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-27\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#Dosya-Yukleme-Surelerini-Iyilestirmek-Icin-%E2%80%9CExpires-Headers%E2%80%9D-Kullanimi\" >Dosya Y\u00fckleme S\u00fcrelerini \u0130yile\u015ftirmek \u0130\u00e7in &#8220;Expires Headers&#8221; Kullan\u0131m\u0131<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-28\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#%E2%80%9CETags%E2%80%9D-Kontrolunu-Devre-Disi-Birakma\" >&#8220;ETags&#8221; Kontrol\u00fcn\u00fc Devre D\u0131\u015f\u0131 B\u0131rakma<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-29\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#htaccess-Dosyasini-Yonetme-ve-Sorun-Giderme\" >.htaccess Dosyas\u0131n\u0131 Y\u00f6netme ve Sorun Giderme<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-30\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#htaccess-Dosyasini-Duzenlemeden-Once-Yapilmasi-Gerekenler-Yedekleme\" >.htaccess Dosyas\u0131n\u0131 D\u00fczenlemeden \u00d6nce Yap\u0131lmas\u0131 Gerekenler: Yedekleme<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-31\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#htaccess-Dosyasinda-Yapilan-Hatalarin-Yol-Actigi-Sorunlar\" >.htaccess Dosyas\u0131nda Yap\u0131lan Hatalar\u0131n Yol A\u00e7t\u0131\u011f\u0131 Sorunlar<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-32\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#htaccess-Dosyasini-Varsayilan-WordPress-Ayarlarina-Geri-Dondurme\" >.htaccess Dosyas\u0131n\u0131 Varsay\u0131lan WordPress Ayarlar\u0131na Geri D\u00f6nd\u00fcrme<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-33\" href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-htaccess-dosyasi-nedir\/#Guvenli-ve-Hizli-WordPress-Hosting-Icin-Neden-IHS-Telekomu-Tercih-Etmelisiniz\" >G\u00fcvenli ve H\u0131zl\u0131 WordPress Hosting \u0130\u00e7in Neden \u0130HS Telekom&#8217;u Tercih Etmelisiniz?<\/a><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"htaccess-Dosyasinin-Temelleri\"><\/span>.htaccess Dosyas\u0131n\u0131n Temelleri<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>.htaccess dosyas\u0131, Apache web sunucular\u0131nda \u00e7al\u0131\u015fan ve sunucu yap\u0131land\u0131rmas\u0131n\u0131 dizin baz\u0131nda de\u011fi\u015ftirmeye olanak tan\u0131yan bir yap\u0131land\u0131rma dosyas\u0131d\u0131r. Bu dosya, web sitenizin ana dizininde (root) bulunur ve i\u00e7erisine eklenen komutlarla sunucunun o dizin ve alt dizinler i\u00e7in nas\u0131l davranaca\u011f\u0131n\u0131 belirler. WordPress&#8217;in temel i\u015fleyi\u015finden geli\u015fmi\u015f g\u00fcvenlik \u00f6nlemlerine kadar geni\u015f bir yelpazede kritik roller \u00fcstlenir.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"htaccess-Dosyasi-Nedir-ve-Ne-Ise-Yarar\"><\/span>.htaccess Dosyas\u0131 Nedir ve Ne \u0130\u015fe Yarar?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><b>.htaccess<\/b> (hypertext access), Apache web sunucusu yaz\u0131l\u0131m\u0131 taraf\u0131ndan kullan\u0131lan bir yap\u0131land\u0131rma dosyas\u0131d\u0131r. Bu dosyan\u0131n en temel i\u015flevi, sunucunun global ayarlar\u0131n\u0131 de\u011fi\u015ftirmeden, belirli bir dizin i\u00e7in \u00f6zel kurallar tan\u0131mlamakt\u0131r. Nokta ile ba\u015flad\u0131\u011f\u0131 i\u00e7in genellikle &#8220;gizli dosya&#8221; olarak kabul edilir. .htaccess dosyas\u0131 sayesinde URL&#8217;leri yeniden yazabilir (URL rewriting), belirli IP adreslerini engelleyebilir, \u00f6zel hata sayfalar\u0131 olu\u015fturabilir, \u015fifre korumal\u0131 dizinler yaratabilir ve sitenizin performans\u0131n\u0131 art\u0131rmak i\u00e7in taray\u0131c\u0131 \u00f6nbellekleme gibi optimizasyonlar yapabilirsiniz.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"htaccess-Dosyasinin-Sunucu-Yapisindaki-Yeri-ve-Calisma-Mantigi\"><\/span>.htaccess Dosyas\u0131n\u0131n Sunucu Yap\u0131s\u0131ndaki Yeri ve \u00c7al\u0131\u015fma Mant\u0131\u011f\u0131<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>.htaccess dosyas\u0131, web sitenizin ana yay\u0131n dizininde, genellikle <code>public_html<\/code> veya <code>www<\/code> klas\u00f6r\u00fcnde yer al\u0131r. Bir kullan\u0131c\u0131 sitenizdeki bir sayfay\u0131 ziyaret etmek istedi\u011finde, <a href=\"https:\/\/www.ihs.com.tr\/blog\/apache-nedir\/\" target=\"_blank\">Apache web sunucusu<\/a>, istenen dosyan\u0131n bulundu\u011fu dizinden ba\u015flayarak k\u00f6k dizine kadar her klas\u00f6rde bir .htaccess dosyas\u0131 olup olmad\u0131\u011f\u0131n\u0131 kontrol eder. E\u011fer bir .htaccess dosyas\u0131 bulursa, i\u00e7erisindeki direktifleri okur ve uygular. Bu hiyerar\u015fik yap\u0131, alt dizinlere \u00f6zel kurallar tan\u0131mlamay\u0131 m\u00fcmk\u00fcn k\u0131lar. \u00d6rne\u011fin, bir alt klas\u00f6re koydu\u011funuz .htaccess dosyas\u0131, sadece o klas\u00f6r i\u00e7in ge\u00e7erli olan kurallar i\u00e7erebilir.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"WordPress-Kurulumunda-htaccess-Dosyasinin-Rolu\"><\/span>WordPress Kurulumunda .htaccess Dosyas\u0131n\u0131n Rol\u00fc<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>WordPress, &#8220;kal\u0131c\u0131 ba\u011flant\u0131lar&#8221; (permalinks) veya di\u011fer ad\u0131yla &#8220;g\u00fczel URL&#8217;ler&#8221; olu\u015fturmak i\u00e7in .htaccess dosyas\u0131na hayati derecede ihtiya\u00e7 duyar. Varsay\u0131lan olarak WordPress, yaz\u0131lar\u0131 ve sayfalar\u0131 <code>alanadiniz.com\/?p=123<\/code> gibi parametrik URL&#8217;lerle sunar. Ancak bu yap\u0131 hem kullan\u0131c\u0131 dostu hem de SEO uyumlu de\u011fildir. Ayarlar > Kal\u0131c\u0131 Ba\u011flant\u0131lar men\u00fcs\u00fcnden &#8220;Yaz\u0131 ismi&#8221; gibi bir yap\u0131 se\u00e7ti\u011finizde, WordPress .htaccess dosyas\u0131na otomatik olarak belirli kurallar ekler. Bu kurallar, <code>alanadiniz.com\/ornek-yazi\/<\/code> gibi temiz bir URL&#8217;yi sunucunun anlayaca\u011f\u0131 <code>index.php<\/code> dosyas\u0131na y\u00f6nlendirir. K\u0131sacas\u0131, .htaccess olmadan, WordPress&#8217;in SEO dostu URL yap\u0131s\u0131 \u00e7al\u0131\u015fmaz.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"htaccess-Dosyasi-Nasil-Bulunur-ve-Goruntulenir\"><\/span>.htaccess Dosyas\u0131 Nas\u0131l Bulunur ve G\u00f6r\u00fcnt\u00fclenir?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>.htaccess dosyas\u0131, ba\u015f\u0131nda nokta oldu\u011fu i\u00e7in i\u015fletim sistemleri taraf\u0131ndan gizli dosya olarak kabul edilir. Bu nedenle, standart bir dosya y\u00f6neticisi g\u00f6r\u00fcn\u00fcm\u00fcnde hemen g\u00f6remeyebilirsiniz. Dosyay\u0131 g\u00f6r\u00fcnt\u00fclemek i\u00e7in &#8220;gizli dosyalar\u0131 g\u00f6ster&#8221; se\u00e7ene\u011fini aktif hale getirmeniz gerekir. Bu dosyaya eri\u015fmek i\u00e7in en yayg\u0131n iki y\u00f6ntem a\u015fa\u011f\u0131da a\u00e7\u0131klanm\u0131\u015ft\u0131r.<\/p>\n<h4>cPanel Dosya Y\u00f6neticisi ile G\u00f6r\u00fcnt\u00fcleme<\/h4>\n<p>E\u011fer <a href=\"https:\/\/www.ihs.com.tr\/web-hosting\/\" target=\"_blank\">hosting<\/a> sa\u011flay\u0131c\u0131n\u0131z cPanel kullan\u0131yorsa, .htaccess dosyas\u0131n\u0131 bulmak olduk\u00e7a basittir. cPanel&#8217;e giri\u015f yapt\u0131ktan sonra &#8220;Dosyalar&#8221; b\u00f6l\u00fcm\u00fcnden &#8220;Dosya Y\u00f6neticisi&#8221;ni a\u00e7\u0131n. Sa\u011f \u00fcst k\u00f6\u015fedeki &#8220;Ayarlar&#8221; butonuna t\u0131klay\u0131n ve a\u00e7\u0131lan pencerede &#8220;Gizli Dosyalar\u0131 G\u00f6ster (dotfiles)&#8221; se\u00e7ene\u011fini i\u015faretleyip kaydedin. Bu i\u015flemden sonra web sitenizin ana dizininde (genellikle <code>public_html<\/code>) .htaccess dosyas\u0131n\u0131 g\u00f6rebilir ve d\u00fczenleyebilirsiniz.<\/p>\n<h4>FTP\/SFTP \u0130stemcisi ile G\u00f6r\u00fcnt\u00fcleme<\/h4>\n<p>FileZilla, Cyberduck veya WinSCP gibi bir <a href=\"https:\/\/www.ihs.com.tr\/blog\/ftp-nedir\/\" target=\"_blank\">FTP<\/a>\/SFTP istemcisi kullanarak da sunucunuza ba\u011flanabilirsiniz. Sunucuya ba\u011fland\u0131ktan sonra, istemcinizin ayarlar\u0131ndan &#8220;Gizli dosyalar\u0131 g\u00f6stermeye zorla&#8221; veya benzeri bir se\u00e7ene\u011fi aktif hale getirin. Bu sayede, sitenizin ana dizininde .htaccess dosyas\u0131n\u0131 listeleyebilir, bilgisayar\u0131n\u0131za indirebilir, d\u00fczenleyebilir ve tekrar sunucuya y\u00fckleyebilirsiniz.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"WordPress-Varsayilan-htaccess-Ayarlari-ve-Kalici-Baglantilar-Permalinks\"><\/span>WordPress Varsay\u0131lan .htaccess Ayarlar\u0131 ve Kal\u0131c\u0131 Ba\u011flant\u0131lar (Permalinks)<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Bir WordPress sitesi kurdu\u011funuzda, sistemin d\u00fczg\u00fcn \u00e7al\u0131\u015fmas\u0131 i\u00e7in temel bir .htaccess dosyas\u0131 olu\u015fturulur. Bu dosyan\u0131n en \u00f6nemli g\u00f6revi, kullan\u0131c\u0131lar\u0131n ve arama motorlar\u0131n\u0131n g\u00f6rd\u00fc\u011f\u00fc temiz URL&#8217;leri, WordPress&#8217;in arka planda anlad\u0131\u011f\u0131 dinamik sorgulara \u00e7evirmektir. Bu i\u015flevsellik, kal\u0131c\u0131 ba\u011flant\u0131 (permalink) ayarlar\u0131yla do\u011frudan ili\u015fkilidir ve sitenizin URL yap\u0131s\u0131n\u0131n temelini olu\u015fturur.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"WordPress-Tarafindan-Otomatik-Olusturulan-Standart-htaccess-Kodlari\"><\/span>WordPress Taraf\u0131ndan Otomatik Olu\u015fturulan Standart .htaccess Kodlar\u0131<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>WordPress&#8217;i ilk kurdu\u011funuzda veya kal\u0131c\u0131 ba\u011flant\u0131 ayarlar\u0131n\u0131z\u0131 ilk kez kaydetti\u011finizde, .htaccess dosyan\u0131z\u0131n i\u00e7ine a\u015fa\u011f\u0131daki gibi standart bir kod blo\u011fu eklenir. Bu kodlar, sitenize gelen t\u00fcm isteklerin, e\u011fer bir dosya veya dizin de\u011filse, WordPress&#8217;in ana <code>index.php<\/code> dosyas\u0131na y\u00f6nlendirilmesini sa\u011flar. Bu sayede WordPress, gelen URL&#8217;yi analiz ederek do\u011fru i\u00e7eri\u011fi kullan\u0131c\u0131ya sunabilir.<\/p>\n<p><b>Standart WordPress .htaccess Kodu:<\/b><\/p>\n<p>\n<code># BEGIN WordPress<\/code><br \/>\n<code>&lt;IfModule mod_rewrite.c&gt;<\/code><br \/>\n<code>RewriteEngine On<\/code><br \/>\n<code>RewriteBase \/<\/code><br \/>\n<code>RewriteRule ^index\\.php$ - [L]<\/code><br \/>\n<code>RewriteCond %{REQUEST_FILENAME} !-f<\/code><br \/>\n<code>RewriteCond %{REQUEST_FILENAME} !-d<\/code><br \/>\n<code>RewriteRule . \/index.php [L]<\/code><br \/>\n<code>&lt;\/IfModule&gt;<\/code><br \/>\n<code># END WordPress<\/code>\n<\/p>\n<p>Bu blok i\u00e7indeki kodlar WordPress taraf\u0131ndan y\u00f6netilir ve manuel olarak de\u011fi\u015ftirilmemesi \u00f6nerilir. <code># BEGIN WordPress<\/code> ve <code># END WordPress<\/code> etiketleri, WordPress&#8217;in bu b\u00f6l\u00fcm\u00fc tan\u0131mas\u0131n\u0131 ve gerekti\u011finde g\u00fcncellemesini sa\u011flar.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Kalici-Baglanti-Permalink-Yapisinin-htaccess-Dosyasina-Etkisi\"><\/span>Kal\u0131c\u0131 Ba\u011flant\u0131 (Permalink) Yap\u0131s\u0131n\u0131n .htaccess Dosyas\u0131na Etkisi<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a href=\"https:\/\/www.ihs.com.tr\/blog\/wordpress-kalici-baglantilar-nedir\/\" target=\"_blank\">Kal\u0131c\u0131 ba\u011flant\u0131 (permalink)<\/a> yap\u0131s\u0131, sitenizdeki i\u00e7eriklerin URL&#8217;lerinin nas\u0131l g\u00f6r\u00fcnece\u011fini belirler. WordPress y\u00f6netici panelinde <b>Ayarlar &gt; Kal\u0131c\u0131 Ba\u011flant\u0131lar<\/b> b\u00f6l\u00fcm\u00fcne gitti\u011finizde &#8220;Basit&#8221;, &#8220;G\u00fcn ve \u0130sim&#8221;, &#8220;Ay ve \u0130sim&#8221;, &#8220;Say\u0131sal&#8221; ve &#8220;Yaz\u0131 ismi&#8221; gibi se\u00e7enekler g\u00f6r\u00fcrs\u00fcn\u00fcz. &#8220;Yaz\u0131 ismi&#8221; (<code>\/ornek-yazi\/<\/code>) gibi SEO dostu bir yap\u0131y\u0131 se\u00e7ti\u011finizde, .htaccess dosyas\u0131ndaki yukar\u0131da belirtilen kurallar bu yap\u0131y\u0131 m\u00fcmk\u00fcn k\u0131lar. Taray\u0131c\u0131ya girilen bu temiz URL, .htaccess sayesinde WordPress&#8217;e &#8220;bu i\u00e7eri\u011fi veritaban\u0131ndan bul ve g\u00f6ster&#8221; komutu olarak iletilir. Yani, se\u00e7ti\u011finiz her kal\u0131c\u0131 ba\u011flant\u0131 yap\u0131s\u0131, .htaccess dosyas\u0131n\u0131n y\u00f6nlendirme mant\u0131\u011f\u0131na dayan\u0131r.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Kalici-Baglanti-Ayarlarini-Degistirdikten-Sonra-htaccess-Dosyasini-Guncelleme\"><\/span>Kal\u0131c\u0131 Ba\u011flant\u0131 Ayarlar\u0131n\u0131 De\u011fi\u015ftirdikten Sonra .htaccess Dosyas\u0131n\u0131 G\u00fcncelleme<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Genellikle, WordPress y\u00f6netici panelinden kal\u0131c\u0131 ba\u011flant\u0131 ayarlar\u0131n\u0131z\u0131 de\u011fi\u015ftirip &#8220;De\u011fi\u015fiklikleri Kaydet&#8221; butonuna t\u0131klad\u0131\u011f\u0131n\u0131zda, WordPress otomatik olarak .htaccess dosyas\u0131n\u0131 g\u00fcnceller. Ancak bazen, dosya yazma izinlerindeki bir sorun nedeniyle bu i\u015flem ba\u015far\u0131s\u0131z olabilir. Bu durumda, WordPress size g\u00fcncellenmesi gereken kodlar\u0131 bir kutucuk i\u00e7inde sunar ve bu kodlar\u0131 manuel olarak .htaccess dosyan\u0131za kopyalaman\u0131z\u0131 ister. E\u011fer kal\u0131c\u0131 ba\u011flant\u0131lar\u0131n\u0131z\u0131 de\u011fi\u015ftirdikten sonra yaz\u0131 ve sayfalar\u0131n\u0131zda &#8220;404 Sayfa Bulunamad\u0131&#8221; hatas\u0131 al\u0131yorsan\u0131z, ilk yapman\u0131z gereken \u015fey <b>Ayarlar &gt; Kal\u0131c\u0131 Ba\u011flant\u0131lar<\/b> sayfas\u0131na gidip hi\u00e7bir de\u011fi\u015fiklik yapmadan &#8220;De\u011fi\u015fiklikleri Kaydet&#8221; butonuna basmakt\u0131r. Bu i\u015flem, .htaccess dosyas\u0131n\u0131n yeniden olu\u015fturulmas\u0131n\u0131 tetikler ve genellikle sorunu \u00e7\u00f6zer.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"htaccess-ile-WordPress-Guvenligini-Artirma-Yontemleri\"><\/span>.htaccess ile WordPress G\u00fcvenli\u011fini Art\u0131rma Y\u00f6ntemleri<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>WordPress sitenizin g\u00fcvenli\u011fi, sadece g\u00fc\u00e7l\u00fc \u015fifreler ve g\u00fcncel eklentilerle s\u0131n\u0131rl\u0131 de\u011fildir. Sunucu seviyesinde alaca\u011f\u0131n\u0131z \u00f6nlemler, sald\u0131rganlar\u0131n sitenize eri\u015fmesini \u00e7ok daha zor hale getirebilir. .htaccess dosyas\u0131, bu konuda en etkili ara\u00e7lardan biridir. Basit kod bloklar\u0131 ekleyerek y\u00f6netici panelinizi koruyabilir, kritik dosyalara eri\u015fimi engelleyebilir ve yayg\u0131n sald\u0131r\u0131 t\u00fcrlerine kar\u015f\u0131 bir savunma hatt\u0131 olu\u015fturabilirsiniz.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Yonetici-Paneli-wp-admin-Klasorunu-Koruma\"><\/span>Y\u00f6netici Paneli (wp-admin) Klas\u00f6r\u00fcn\u00fc Koruma<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>WordPress y\u00f6netici paneli (<code>\/wp-admin\/<\/code>), kaba kuvvet (brute-force) sald\u0131r\u0131lar\u0131n\u0131n en yayg\u0131n hedefidir. Bu alan\u0131 ek g\u00fcvenlik katmanlar\u0131yla korumak, sitenizin kontrol\u00fcn\u00fc kaybetmenizi \u00f6nler.<\/p>\n<h4>Belirli IP Adreslerine Eri\u015fim \u0130zni Verme<\/h4>\n<p>E\u011fer y\u00f6netici paneline sadece siz veya belirli birka\u00e7 ki\u015fi eri\u015fiyorsa, en etkili y\u00f6ntemlerden biri IP k\u0131s\u0131tlamas\u0131d\u0131r. Bu y\u00f6ntemle, yaln\u0131zca belirledi\u011finiz <a href=\"https:\/\/www.ihs.com.tr\/blog\/ip-adresleri-nedir-ve-nasil-calisir\/\" target=\"_blank\">IP adresleri<\/a> <code>wp-admin<\/code> klas\u00f6r\u00fcne eri\u015febilir. <code>\/wp-admin\/<\/code> klas\u00f6r\u00fcn\u00fcn i\u00e7ine yeni bir .htaccess dosyas\u0131 olu\u015fturup a\u015fa\u011f\u0131daki kodlar\u0131 ekleyin. &#8220;YOUR_IP_ADDRESS&#8221; k\u0131sm\u0131n\u0131 kendi IP adresinizle de\u011fi\u015ftirmeyi unutmay\u0131n.<\/p>\n<p>\n<code>order deny,allow<\/code><br \/>\n<code>allow from YOUR_IP_ADDRESS<\/code><br \/>\n<code>deny from all<\/code>\n<\/p>\n<h4>Ek \u015eifre Korumas\u0131 Ekleme (.htpasswd)<\/h4>\n<p>Y\u00f6netici paneline ikinci bir \u015fifre katman\u0131 eklemek, g\u00fcvenli\u011fi \u00f6nemli \u00f6l\u00e7\u00fcde art\u0131r\u0131r. Bu, sunucu d\u00fczeyinde bir kimlik do\u011frulamas\u0131d\u0131r. \u0130lk olarak, bir <code>.htpasswd<\/code> dosyas\u0131 olu\u015fturman\u0131z gerekir. cPanel&#8217;de bu i\u015flemi &#8220;Dizin Gizlili\u011fi&#8221; arac\u0131yla kolayca yapabilirsiniz. Ard\u0131ndan, <code>\/wp-admin\/<\/code> klas\u00f6r\u00fcndeki .htaccess dosyas\u0131na a\u015fa\u011f\u0131daki kodlar\u0131 ekleyerek bu \u015fifre korumas\u0131n\u0131 aktif hale getirebilirsiniz. <code>\/path\/to\/your\/.htpasswd<\/code> yolunu kendi dosya yolunuzla g\u00fcncellemelisiniz.<\/p>\n<p>\n<code>AuthType Basic<\/code><br \/>\n<code>AuthName \"Admin Area\"<\/code><br \/>\n<code>AuthUserFile \/path\/to\/your\/.htpasswd<\/code><br \/>\n<code>require valid-user<\/code>\n<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Kritik-WordPress-Dosyalarina-Erisimi-Engelleme\"><\/span>Kritik WordPress Dosyalar\u0131na Eri\u015fimi Engelleme<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>WordPress kurulumunuzda, veritaban\u0131 bilgileri gibi hassas verileri i\u00e7eren veya sald\u0131rganlar taraf\u0131ndan k\u00f6t\u00fcye kullan\u0131labilecek baz\u0131 dosyalar bulunur. Bu dosyalara web \u00fczerinden do\u011frudan eri\u015fimi engellemek kritik bir g\u00fcvenlik ad\u0131m\u0131d\u0131r.<\/p>\n<h4>wp-config.php Dosyas\u0131n\u0131 Koruma Alt\u0131na Alma<\/h4>\n<p><code>wp-config.php<\/code> dosyas\u0131, veritaban\u0131 ba\u011flant\u0131 bilgileriniz dahil olmak \u00fczere sitenizin en hassas bilgilerini i\u00e7erir. Bu dosyaya taray\u0131c\u0131 \u00fczerinden eri\u015fimi tamamen engellemek i\u00e7in sitenizin ana dizinindeki .htaccess dosyas\u0131na a\u015fa\u011f\u0131daki kodu ekleyin.<\/p>\n<p>\n<code>&lt;files wp-config.php&gt;<\/code><br \/>\n<code>order allow,deny<\/code><br \/>\n<code>deny from all<\/code><br \/>\n<code>&lt;\/files&gt;<\/code>\n<\/p>\n<h4>xmlrpc.php Dosyas\u0131na Eri\u015fimi Kapatma<\/h4>\n<p><code>xmlrpc.php<\/code> dosyas\u0131, uzaktan eri\u015fim ve otomasyon i\u00e7in kullan\u0131lsa da, DDoS ve brute-force sald\u0131r\u0131lar\u0131 i\u00e7in s\u0131k\u00e7a hedef al\u0131n\u0131r. E\u011fer mobil uygulama veya Jetpack gibi bu dosyay\u0131 gerektiren bir servis kullanm\u0131yorsan\u0131z, eri\u015fimi kapatmak en g\u00fcvenli yoldur. Ana .htaccess dosyan\u0131za \u015fu kodlar\u0131 ekleyin:<\/p>\n<p>\n<code>&lt;files xmlrpc.php&gt;<\/code><br \/>\n<code>order allow,deny<\/code><br \/>\n<code>deny from all<\/code><br \/>\n<code>&lt;\/files&gt;<\/code>\n<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Dizin-Listelemeyi-Directory-Browsing-Kapatma\"><\/span>Dizin Listelemeyi (Directory Browsing) Kapatma<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Sunucunuzda, i\u00e7inde <code>index.html<\/code> veya <code>index.php<\/code> dosyas\u0131 bulunmayan bir klas\u00f6re eri\u015fildi\u011finde, Apache varsay\u0131lan olarak o klas\u00f6r\u00fcn i\u00e7eri\u011fini listeler. Bu durum, sald\u0131rganlar\u0131n sitenizin dosya yap\u0131s\u0131n\u0131 g\u00f6rmesine ve potansiyel zafiyetleri ke\u015ffetmesine olanak tan\u0131r. Dizin listelemeyi kapatmak i\u00e7in ana .htaccess dosyan\u0131za \u015fu basit sat\u0131r\u0131 eklemeniz yeterlidir:<\/p>\n<p><code>Options -Indexes<\/code><\/p>\n<h3><span class=\"ez-toc-section\" id=\"PHP-Kodlarinin-Belirli-Klasorlerde-Calismasini-Engelleme\"><\/span>PHP Kodlar\u0131n\u0131n Belirli Klas\u00f6rlerde \u00c7al\u0131\u015fmas\u0131n\u0131 Engelleme<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Sald\u0131rganlar, sitenize bir \u015fekilde zararl\u0131 bir dosya y\u00fcklemeyi ba\u015far\u0131rlarsa, bu dosyay\u0131 \u00e7al\u0131\u015ft\u0131rmak i\u00e7in genellikle <code>wp-content\/uploads<\/code> gibi yazma izni olan klas\u00f6rleri hedefler. Bu klas\u00f6rlerde PHP kodlar\u0131n\u0131n \u00e7al\u0131\u015fmas\u0131n\u0131 engelleyerek, y\u00fcklenmi\u015f olsa bile zararl\u0131 bir scriptin \u00e7al\u0131\u015fmas\u0131n\u0131 \u00f6nleyebilirsiniz. <code>wp-content\/uploads\/<\/code> klas\u00f6r\u00fcn\u00fcn i\u00e7ine yeni bir .htaccess dosyas\u0131 olu\u015fturun ve \u015fu kodlar\u0131 ekleyin:<\/p>\n<p>\n<code>&lt;Files *.php&gt;<\/code><br \/>\n<code>deny from all<\/code><br \/>\n<code>&lt;\/Files&gt;<\/code>\n<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Hotlinking-Resim-ve-Dosya-Hirsizligi-Onleme\"><\/span>Hotlinking (Resim ve Dosya H\u0131rs\u0131zl\u0131\u011f\u0131) \u00d6nleme<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Hotlinking, ba\u015fka web sitelerinin sizin resimlerinizi veya di\u011fer dosyalar\u0131n\u0131z\u0131 do\u011frudan kendi sayfalar\u0131nda, sizin sunucu kaynaklar\u0131n\u0131z\u0131 (bant geni\u015fli\u011fi) kullanarak g\u00f6stermesidir. Bu, hem i\u00e7eri\u011finizin izinsiz kullan\u0131lmas\u0131na hem de <a href=\"https:\/\/www.ihs.com.tr\/sunucu-kiralama\/\" target=\"_blank\">sunucu<\/a> maliyetlerinizin artmas\u0131na neden olur. Hotlinking&#8217;i \u00f6nlemek i\u00e7in ana .htaccess dosyan\u0131za a\u015fa\u011f\u0131daki kodu ekleyin. <code>your-domain.com<\/code> k\u0131sm\u0131n\u0131 kendi alan ad\u0131n\u0131zla de\u011fi\u015ftirmeyi unutmay\u0131n.<\/p>\n<p>\n<code>RewriteEngine on<\/code><br \/>\n<code>RewriteCond %{HTTP_REFERER} !^$<\/code><br \/>\n<code>RewriteCond %{HTTP_REFERER} !^http(s)?:\/\/(www\\.)?your-domain.com [NC]<\/code><br \/>\n<code>RewriteRule \\.(jpg|jpeg|png|gif|bmp)$ - [NC,F,L]<\/code>\n<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Kotu-Niyetli-Botlari-ve-Istenmeyen-Ziyaretcileri-Engelleme\"><\/span>K\u00f6t\u00fc Niyetli Botlar\u0131 ve \u0130stenmeyen Ziyaret\u00e7ileri Engelleme<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Sitenizi s\u00fcrekli olarak tarayan, i\u00e7erik \u00e7alan veya zafiyet arayan k\u00f6t\u00fc niyetli botlar\u0131 engellemek, hem g\u00fcvenli\u011finizi hem de performans\u0131n\u0131z\u0131 art\u0131r\u0131r. Bu botlar\u0131 &#8220;User-Agent&#8221; (kullan\u0131c\u0131 arac\u0131s\u0131) bilgisine g\u00f6re veya IP adreslerine g\u00f6re engelleyebilirsiniz. A\u015fa\u011f\u0131daki kod, belirli bir User-Agent&#8217;a sahip bir botu engeller:<\/p>\n<p>\n<code>RewriteEngine On<\/code><br \/>\n<code>RewriteCond %{HTTP_USER_AGENT} ^BadBot [NC]<\/code><br \/>\n<code>RewriteRule .* - [F,L]<\/code>\n<\/p>\n<h3><span class=\"ez-toc-section\" id=\"XSS-Cross-Site-Scripting-Saldirilarina-Karsi-Temel-Koruma\"><\/span>XSS (Cross-Site Scripting) Sald\u0131r\u0131lar\u0131na Kar\u015f\u0131 Temel Koruma<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>XSS sald\u0131r\u0131lar\u0131, sald\u0131rganlar\u0131n siteniz \u00fczerinden di\u011fer kullan\u0131c\u0131lar\u0131n taray\u0131c\u0131lar\u0131nda zararl\u0131 scriptler \u00e7al\u0131\u015ft\u0131rmas\u0131na olanak tan\u0131r. .htaccess dosyas\u0131 ile baz\u0131 temel HTTP ba\u015fl\u0131klar\u0131n\u0131 ayarlayarak bu t\u00fcr sald\u0131r\u0131lara kar\u015f\u0131 ek bir koruma katman\u0131 sa\u011flayabilirsiniz. A\u015fa\u011f\u0131daki kodlar, baz\u0131 yayg\u0131n XSS ve t\u0131klama ka\u00e7\u0131rma (clickjacking) sald\u0131r\u0131lar\u0131n\u0131 zorla\u015ft\u0131r\u0131r.<\/p>\n<p>\n<code>&lt;IfModule mod_headers.c&gt;<\/code><br \/>\n<code>Header set X-XSS-Protection \"1; mode=block\"<\/code><br \/>\n<code>Header set X-Content-Type-Options \"nosniff\"<\/code><br \/>\n<code>Header set X-Frame-Options \"SAMEORIGIN\"<\/code><br \/>\n<code>&lt;\/IfModule&gt;<\/code>\n<\/p>\n<h2><span class=\"ez-toc-section\" id=\"htaccess-ile-Gelismis-URL-Yonlendirme-Redirection-Ayarlari\"><\/span>.htaccess ile Geli\u015fmi\u015f URL Y\u00f6nlendirme (Redirection) Ayarlar\u0131<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>URL y\u00f6nlendirme, bir URL&#8217;ye gelen iste\u011fi farkl\u0131 bir URL&#8217;ye otomatik olarak g\u00f6nderme i\u015flemidir. .htaccess dosyas\u0131, bu y\u00f6nlendirmeleri sunucu d\u00fczeyinde y\u00f6netmek i\u00e7in g\u00fc\u00e7l\u00fc ve esnek bir ara\u00e7t\u0131r. Do\u011fru y\u00f6nlendirme stratejileri, hem kullan\u0131c\u0131 deneyimini iyile\u015ftirir hem de sitenizin SEO de\u011ferini korur. \u00d6zellikle site ta\u015f\u0131ma, i\u00e7erik g\u00fcncelleme veya URL yap\u0131s\u0131n\u0131 de\u011fi\u015ftirme gibi durumlarda y\u00f6nlendirmeler hayati \u00f6nem ta\u015f\u0131r.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Yonlendirme-Turleri-Arasindaki-Farklar\"><\/span>Y\u00f6nlendirme T\u00fcrleri Aras\u0131ndaki Farklar<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Web d\u00fcnyas\u0131nda en s\u0131k kullan\u0131lan iki y\u00f6nlendirme t\u00fcr\u00fc 301 ve 302&#8217;dir. Her ikisi de kullan\u0131c\u0131y\u0131 yeni bir adrese g\u00f6nderse de, arama motorlar\u0131na verdikleri sinyaller ve kullan\u0131m ama\u00e7lar\u0131 tamamen farkl\u0131d\u0131r.<\/p>\n<div class=\"karsilastirma\">\n<table>\n<thead>\n<tr>\n<th>\u00d6zellik<\/th>\n<th>301 Kal\u0131c\u0131 Y\u00f6nlendirme<\/th>\n<th>302 Ge\u00e7ici Y\u00f6nlendirme<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>Anlam\u0131<\/strong><\/td>\n<td>\u0130\u00e7erik kal\u0131c\u0131 olarak yeni bir adrese ta\u015f\u0131nd\u0131.<\/td>\n<td>\u0130\u00e7erik ge\u00e7ici olarak ba\u015fka bir adreste bulunuyor.<\/td>\n<\/tr>\n<tr>\n<td><strong>SEO Etkisi<\/strong><\/td>\n<td>Eski URL&#8217;nin SEO de\u011ferinin (link g\u00fcc\u00fc, otorite vb.) %90-99&#8217;unu yeni URL&#8217;ye aktar\u0131r.<\/td>\n<td>SEO de\u011ferini yeni URL&#8217;ye aktarmaz. Arama motorlar\u0131 orijinal URL&#8217;yi dizinde tutmaya devam eder.<\/td>\n<\/tr>\n<tr>\n<td><strong>Kullan\u0131m Senaryolar\u0131<\/strong><\/td>\n<td>&#8211; Siteyi yeni bir domaine ta\u015f\u0131ma<br \/>&#8211; HTTP&#8217;den HTTPS&#8217;ye ge\u00e7i\u015f<br \/>&#8211; Silinen bir sayfan\u0131n en alakal\u0131 alternatife y\u00f6nlendirilmesi<br \/>&#8211; URL yap\u0131s\u0131n\u0131 kal\u0131c\u0131 olarak de\u011fi\u015ftirme<\/td>\n<td>&#8211; A\/B testi i\u00e7in kullan\u0131c\u0131lar\u0131 ge\u00e7ici olarak farkl\u0131 bir sayfaya y\u00f6nlendirme<br \/>&#8211; Bak\u0131mdayken siteyi ge\u00e7ici bir sayfaya y\u00f6nlendirme<br \/>&#8211; Cihaza veya lokasyona \u00f6zel i\u00e7erik sunma<\/td>\n<\/tr>\n<tr>\n<td><strong>Taray\u0131c\u0131 \u00d6nbelle\u011fi<\/strong><\/td>\n<td>Taray\u0131c\u0131lar taraf\u0131ndan kal\u0131c\u0131 olarak \u00f6nbelle\u011fe al\u0131n\u0131r.<\/td>\n<td>Genellikle \u00f6nbelle\u011fe al\u0131nmaz, her istekte yeniden kontrol edilir.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<h4>301 Kal\u0131c\u0131 Y\u00f6nlendirme Nedir ve SEO \u0130\u00e7in Neden \u00d6nemlidir?<\/h4>\n<p>301 y\u00f6nlendirmesi, bir web sayfas\u0131n\u0131n kal\u0131c\u0131 olarak yeni bir konuma ta\u015f\u0131nd\u0131\u011f\u0131n\u0131 belirtir. SEO a\u00e7\u0131s\u0131ndan en \u00f6nemli y\u00f6nlendirme t\u00fcr\u00fcd\u00fcr \u00e7\u00fcnk\u00fc arama motorlar\u0131na &#8220;Bu sayfan\u0131n t\u00fcm s\u0131ralama g\u00fcc\u00fcn\u00fc, backlink de\u011ferini ve otoritesini yeni adrese aktar&#8221; mesaj\u0131n\u0131 verir. Bir sayfay\u0131 sildi\u011finizde veya URL&#8217;sini de\u011fi\u015ftirdi\u011finizde 301 y\u00f6nlendirmesi yapmazsan\u0131z, o sayfan\u0131n kazand\u0131\u011f\u0131 t\u00fcm SEO de\u011feri kaybolur ve kullan\u0131c\u0131lar 404 hata sayfas\u0131yla kar\u015f\u0131la\u015f\u0131r. Bu nedenle, site yap\u0131s\u0131nda yap\u0131lan kal\u0131c\u0131 de\u011fi\u015fikliklerde 301 y\u00f6nlendirmesi kullanmak zorunludur.<\/p>\n<h4>302 Ge\u00e7ici Y\u00f6nlendirme Nedir ve Ne Zaman Kullan\u0131l\u0131r?<\/h4>\n<p>302 y\u00f6nlendirmesi ise bir sayfan\u0131n ge\u00e7ici olarak farkl\u0131 bir adreste bulundu\u011funu belirtir. Arama motorlar\u0131 bu y\u00f6nlendirmeyi g\u00f6rd\u00fc\u011f\u00fcnde, orijinal URL&#8217;yi dizinlerinde tutmaya devam eder ve SEO de\u011ferini yeni adrese aktarmaz. Bu, &#8220;orijinal sayfa yak\u0131nda geri d\u00f6necek&#8221; anlam\u0131na gelir. Genellikle k\u0131sa s\u00fcreli bak\u0131m \u00e7al\u0131\u015fmalar\u0131, bir \u00fcr\u00fcn\u00fcn stokta olmamas\u0131 durumunda kullan\u0131c\u0131y\u0131 benzer bir \u00fcr\u00fcne y\u00f6nlendirme veya co\u011frafi konuma g\u00f6re farkl\u0131 i\u00e7erik g\u00f6sterme gibi ge\u00e7ici durumlar i\u00e7in kullan\u0131l\u0131r.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Yaygin-Yonlendirme-Senaryolari\"><\/span>Yayg\u0131n Y\u00f6nlendirme Senaryolar\u0131<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>.htaccess dosyas\u0131 ile \u00e7e\u015fitli y\u00f6nlendirme ihtiya\u00e7lar\u0131n\u0131 kolayca kar\u015f\u0131layabilirsiniz.<\/p>\n<h4>Tek Bir Sayfay\u0131 veya Yaz\u0131y\u0131 Yeni Bir URL&#8217;ye Y\u00f6nlendirme<\/h4>\n<p>Eski bir blog yaz\u0131s\u0131n\u0131 g\u00fcncelleyip URL&#8217;sini de\u011fi\u015ftirdi\u011finizde, eski URL&#8217;yi yenisine y\u00f6nlendirmek i\u00e7in a\u015fa\u011f\u0131daki kodu kullanabilirsiniz.<\/p>\n<p><code>Redirect 301 \/eski-sayfa.html https:\/\/www.alanadiniz.com\/yeni-sayfa\/<\/code><\/p>\n<h4>Belirli Bir Klas\u00f6r\u00fc Farkl\u0131 Bir URL&#8217;ye Y\u00f6nlendirme<\/h4>\n<p>Sitenizdeki <code>\/blog\/<\/code> klas\u00f6r\u00fcn\u00fc tamamen yeni bir alt alan ad\u0131na (subdomain) ta\u015f\u0131d\u0131ysan\u0131z, t\u00fcm klas\u00f6r\u00fc y\u00f6nlendirebilirsiniz.<\/p>\n<p><code>Redirect 301 \/eski-klasor\/ https:\/\/yeni.alanadiniz.com\/<\/code><\/p>\n<h4>T\u00fcm Siteyi Yeni Bir Alan Ad\u0131na (Domain) Y\u00f6nlendirme<\/h4>\n<p>E\u011fer t\u00fcm web sitenizi yeni bir <a href=\"https:\/\/www.ihs.com.tr\/domain\/alan-adi-domain-tescili.html\" target=\"_blank\">alan ad\u0131<\/a>na ta\u015f\u0131yorsan\u0131z, eski alan ad\u0131n\u0131n .htaccess dosyas\u0131na a\u015fa\u011f\u0131daki kodu ekleyerek t\u00fcm trafi\u011fi ve SEO de\u011ferini yeni siteye aktarabilirsiniz.<\/p>\n<p>\n<code>RewriteEngine on<\/code><br \/>\n<code>RewriteCond %{HTTP_HOST} ^eskialanadi.com [NC,OR]<\/code><br \/>\n<code>RewriteCond %{HTTP_HOST} ^www.eskialanadi.com [NC]<\/code><br \/>\n<code>RewriteRule ^(.*)$ https:\/\/www.yenialanadi.com\/$1 [L,R=301,NC]<\/code>\n<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Alan-Adi-Yapisini-Standartlastirma\"><\/span>Alan Ad\u0131 Yap\u0131s\u0131n\u0131 Standartla\u015ft\u0131rma<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Arama motorlar\u0131, <code>www.alanadiniz.com<\/code> ve <code>alanadiniz.com<\/code> adreslerini iki farkl\u0131 site olarak alg\u0131layabilir. Bu durum, &#8220;yinelenen i\u00e7erik&#8221; sorunlar\u0131na yol a\u00e7abilir. Tercih etti\u011finiz bir s\u00fcr\u00fcm\u00fc belirleyip di\u011ferini ona y\u00f6nlendirmek, SEO i\u00e7in en iyi uygulamalardan biridir.<\/p>\n<h4>WWW Olmayan S\u00fcr\u00fcm\u00fc WWW Olan S\u00fcr\u00fcme Y\u00f6nlendirme<\/h4>\n<p>\n<code>RewriteEngine On<\/code><br \/>\n<code>RewriteCond %{HTTP_HOST} ^alanadiniz.com [NC]<\/code><br \/>\n<code>RewriteRule ^(.*)$ https:\/\/www.alanadiniz.com\/$1 [L,R=301]<\/code>\n<\/p>\n<h4>WWW Olan S\u00fcr\u00fcm\u00fc WWW Olmayan S\u00fcr\u00fcme Y\u00f6nlendirme<\/h4>\n<p>\n<code>RewriteEngine On<\/code><br \/>\n<code>RewriteCond %{HTTP_HOST} ^www.alanadiniz.com [NC]<\/code><br \/>\n<code>RewriteRule ^(.*)$ https:\/\/alanadiniz.com\/$1 [L,R=301]<\/code>\n<\/p>\n<h3><span class=\"ez-toc-section\" id=\"HTTPSye-SSL-Zorunlu-Yonlendirme-Yapma\"><\/span>HTTPS&#8217;ye (SSL) Zorunlu Y\u00f6nlendirme Yapma<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Web sitenizde bir <a href=\"https:\/\/www.ihs.com.tr\/ssl\/\" target=\"_blank\">SSL sertifikas\u0131<\/a> kuruluysa, t\u00fcm HTTP trafi\u011fini g\u00fcvenli olan HTTPS s\u00fcr\u00fcm\u00fcne y\u00f6nlendirmek hem g\u00fcvenlik hem de SEO i\u00e7in bir zorunluluktur. Google, HTTPS&#8217;yi bir s\u0131ralama fakt\u00f6r\u00fc olarak kabul etmektedir.<\/p>\n<p>\n<code>RewriteEngine On<\/code><br \/>\n<code>RewriteCond %{HTTPS} off<\/code><br \/>\n<code>RewriteRule ^(.*)$ https:\/\/%{HTTP_HOST}%{REQUEST_URI} [L,R=301]<\/code>\n<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Ozel-404-Hata-Sayfasi-Olusturma-ve-Yonlendirme\"><\/span>\u00d6zel 404 Hata Sayfas\u0131 Olu\u015fturma ve Y\u00f6nlendirme<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Ziyaret\u00e7iler sitenizde bulunmayan bir sayfaya eri\u015fmeye \u00e7al\u0131\u015ft\u0131\u011f\u0131nda, varsay\u0131lan ve genellikle s\u0131k\u0131c\u0131 bir 404 hata sayfas\u0131yla kar\u015f\u0131la\u015f\u0131rlar. Marka kimli\u011finizi yans\u0131tan, yard\u0131mc\u0131 linkler i\u00e7eren \u00f6zel bir 404 sayfas\u0131 olu\u015fturmak, kullan\u0131c\u0131 deneyimini iyile\u015ftirir. \u00d6zel 404 sayfan\u0131z\u0131 olu\u015fturduktan sonra, .htaccess dosyas\u0131na a\u015fa\u011f\u0131daki sat\u0131r\u0131 ekleyerek y\u00f6nlendirmeyi yapabilirsiniz.<\/p>\n<p><code>ErrorDocument 404 \/404.html<\/code><\/p>\n<h2><span class=\"ez-toc-section\" id=\"htaccess-ile-WordPress-Performans-Optimizasyonu\"><\/span>.htaccess ile WordPress Performans Optimizasyonu<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Web sitesi h\u0131z\u0131, hem kullan\u0131c\u0131 deneyimi hem de arama motoru s\u0131ralamalar\u0131 i\u00e7in kritik bir fakt\u00f6rd\u00fcr. Yava\u015f y\u00fcklenen bir site, ziyaret\u00e7ilerin hemen \u00e7\u0131kmas\u0131na (bounce rate) neden olurken, arama motorlar\u0131 taraf\u0131ndan da daha d\u00fc\u015f\u00fck s\u0131ralarda listelenir. .htaccess dosyas\u0131, sunucu d\u00fczeyinde baz\u0131 performans ayarlar\u0131n\u0131 etkinle\u015ftirerek sitenizin y\u00fckleme s\u00fcrelerini \u00f6nemli \u00f6l\u00e7\u00fcde iyile\u015ftirmenize olanak tan\u0131r. Bu optimizasyonlar genellikle taray\u0131c\u0131 \u00f6nbellekleme ve veri s\u0131k\u0131\u015ft\u0131rma \u00fczerine odaklan\u0131r.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Tarayici-Onbellekleme-Browser-Caching-Ozelligini-Etkinlestirme\"><\/span>Taray\u0131c\u0131 \u00d6nbellekleme (Browser Caching) \u00d6zelli\u011fini Etkinle\u015ftirme<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Bir kullan\u0131c\u0131 web sitenizi ziyaret etti\u011finde, taray\u0131c\u0131s\u0131 sitenin statik dosyalar\u0131n\u0131 (CSS, JavaScript, resimler gibi) indirir. Taray\u0131c\u0131 \u00f6nbellekleme, bu dosyalar\u0131n kullan\u0131c\u0131n\u0131n bilgisayar\u0131nda ge\u00e7ici bir s\u00fcre saklanmas\u0131n\u0131 sa\u011flar. B\u00f6ylece, kullan\u0131c\u0131 sitenizi tekrar ziyaret etti\u011finde veya ba\u015fka bir sayfaya ge\u00e7ti\u011finde, bu dosyalar yeniden sunucudan indirilmek yerine yerel diskten h\u0131zl\u0131ca y\u00fcklenir. Bu, sayfa y\u00fckleme s\u00fcresini dramatik bir \u015fekilde azalt\u0131r. .htaccess ile bu \u00f6zelli\u011fi etkinle\u015ftirmek i\u00e7in <code>mod_expires<\/code> mod\u00fcl\u00fcn\u00fc kullanabilirsiniz.<\/p>\n<p>\n<code>&lt;IfModule mod_expires.c&gt;<\/code><br \/>\n<code>ExpiresActive On<\/code><br \/>\n<code>ExpiresByType image\/jpg \"access 1 year\"<\/code><br \/>\n<code>ExpiresByType image\/jpeg \"access 1 year\"<\/code><br \/>\n<code>ExpiresByType image\/gif \"access 1 year\"<\/code><br \/>\n<code>ExpiresByType image\/png \"access 1 year\"<\/code><br \/>\n<code>ExpiresByType text\/css \"access 1 month\"<\/code><br \/>\n<code>ExpiresByType application\/pdf \"access 1 month\"<\/code><br \/>\n<code>ExpiresByType application\/javascript \"access 1 month\"<\/code><br \/>\n<code>ExpiresByType application\/x-javascript \"access 1 month\"<\/code><br \/>\n<code>ExpiresByType image\/x-icon \"access 1 year\"<\/code><br \/>\n<code>ExpiresDefault \"access 2 days\"<\/code><br \/>\n<code>&lt;\/IfModule&gt;<\/code>\n<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Gzip-Sikistirmasi-ile-Sayfa-Boyutlarini-Kucultme\"><\/span>Gzip S\u0131k\u0131\u015ft\u0131rmas\u0131 ile Sayfa Boyutlar\u0131n\u0131 K\u00fc\u00e7\u00fcltme<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a href=\"https:\/\/www.ihs.com.tr\/blog\/gzip-sikistirmasi-nedir\/\" target=\"_blank\">Gzip s\u0131k\u0131\u015ft\u0131rmas\u0131<\/a>, sunucunuzun web sitenizin dosyalar\u0131n\u0131 (HTML, CSS, JavaScript) kullan\u0131c\u0131ya g\u00f6ndermeden \u00f6nce s\u0131k\u0131\u015ft\u0131rmas\u0131n\u0131 sa\u011flayan bir teknolojidir. S\u0131k\u0131\u015ft\u0131r\u0131lm\u0131\u015f dosyalar\u0131n boyutu \u00e7ok daha k\u00fc\u00e7\u00fck oldu\u011fu i\u00e7in kullan\u0131c\u0131ya daha h\u0131zl\u0131 iletilir ve taray\u0131c\u0131 taraf\u0131ndan a\u00e7\u0131l\u0131r. Bu i\u015flem, sayfa y\u00fckleme s\u00fcresini %50 ila %70 oran\u0131nda azaltabilir. Gzip s\u0131k\u0131\u015ft\u0131rmas\u0131n\u0131 .htaccess \u00fczerinden etkinle\u015ftirmek i\u00e7in <code>mod_deflate<\/code> mod\u00fcl\u00fcn\u00fc kullanabilirsiniz.<\/p>\n<div class=\"karsilastirma\">\n<table>\n<thead>\n<tr>\n<th>Dosya T\u00fcr\u00fc<\/th>\n<th>S\u0131k\u0131\u015ft\u0131r\u0131lmam\u0131\u015f Boyut (\u00d6rnek)<\/th>\n<th>Gzip ile S\u0131k\u0131\u015ft\u0131r\u0131lm\u0131\u015f Boyut (Tahmini)<\/th>\n<th>Kazan\u00e7<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>HTML<\/strong><\/td>\n<td>100 KB<\/td>\n<td>~25 KB<\/td>\n<td>~75%<\/td>\n<\/tr>\n<tr>\n<td><strong>CSS<\/strong><\/td>\n<td>150 KB<\/td>\n<td>~30 KB<\/td>\n<td>~80%<\/td>\n<\/tr>\n<tr>\n<td><strong>JavaScript<\/strong><\/td>\n<td>250 KB<\/td>\n<td>~60 KB<\/td>\n<td>~76%<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p>\n<code>&lt;IfModule mod_deflate.c&gt;<\/code><br \/>\n<code>AddOutputFilterByType DEFLATE text\/plain<\/code><br \/>\n<code>AddOutputFilterByType DEFLATE text\/html<\/code><br \/>\n<code>AddOutputFilterByType DEFLATE text\/xml<\/code><br \/>\n<code>AddOutputFilterByType DEFLATE text\/css<\/code><br \/>\n<code>AddOutputFilterByType DEFLATE application\/xml<\/code><br \/>\n<code>AddOutputFilterByType DEFLATE application\/xhtml+xml<\/code><br \/>\n<code>AddOutputFilterByType DEFLATE application\/rss+xml<\/code><br \/>\n<code>AddOutputFilterByType DEFLATE application\/javascript<\/code><br \/>\n<code>AddOutputFilterByType DEFLATE application\/x-javascript<\/code><br \/>\n<code>&lt;\/IfModule&gt;<\/code>\n<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Dosya-Yukleme-Surelerini-Iyilestirmek-Icin-%E2%80%9CExpires-Headers%E2%80%9D-Kullanimi\"><\/span>Dosya Y\u00fckleme S\u00fcrelerini \u0130yile\u015ftirmek \u0130\u00e7in &#8220;Expires Headers&#8221; Kullan\u0131m\u0131<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>&#8220;Expires Headers&#8221; (Son Kullanma Ba\u015fl\u0131klar\u0131), taray\u0131c\u0131 \u00f6nbelleklemenin temelini olu\u015fturan HTTP ba\u015fl\u0131klar\u0131d\u0131r. Yukar\u0131da &#8220;Taray\u0131c\u0131 \u00d6nbellekleme&#8221; ba\u015fl\u0131\u011f\u0131nda verilen kod, asl\u0131nda bu ba\u015fl\u0131klar\u0131 ayarlamaktad\u0131r. Bu ba\u015fl\u0131klar, taray\u0131c\u0131ya bir dosyan\u0131n ne kadar s\u00fcreyle \u00f6nbellekte tutulmas\u0131 gerekti\u011fini s\u00f6yler. \u00d6rne\u011fin, bir resim dosyas\u0131 i\u00e7in &#8220;1 y\u0131l&#8221; s\u00fcre belirledi\u011finizde, taray\u0131c\u0131 o resmi 1 y\u0131l boyunca yeniden sunucudan istemez. Bu, \u00f6zellikle s\u0131k de\u011fi\u015fmeyen logo, ikon, CSS ve JavaScript dosyalar\u0131 i\u00e7in sunucu y\u00fck\u00fcn\u00fc azalt\u0131r ve sonraki sayfa g\u00f6r\u00fcnt\u00fclemelerini h\u0131zland\u0131r\u0131r.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"%E2%80%9CETags%E2%80%9D-Kontrolunu-Devre-Disi-Birakma\"><\/span>&#8220;ETags&#8221; Kontrol\u00fcn\u00fc Devre D\u0131\u015f\u0131 B\u0131rakma<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>ETags (Entity Tags), taray\u0131c\u0131n\u0131n bir dosyan\u0131n sunucudaki s\u00fcr\u00fcm\u00fcn\u00fcn de\u011fi\u015fip de\u011fi\u015fmedi\u011fini kontrol etmesi i\u00e7in kullan\u0131lan bir mekanizmad\u0131r. Taray\u0131c\u0131, \u00f6nbelle\u011findeki dosyan\u0131n ETag&#8217;i ile sunucudaki dosyan\u0131n ETag&#8217;ini kar\u015f\u0131la\u015ft\u0131r\u0131r. Ancak, \u00e7oklu sunucu ortamlar\u0131nda (load balancer kullanan b\u00fcy\u00fck siteler gibi), ETag&#8217;ler sunucudan sunucuya farkl\u0131l\u0131k g\u00f6sterebilir. Bu durum, taray\u0131c\u0131n\u0131n dosyay\u0131 gereksiz yere yeniden indirmesine neden olabilir. E\u011fer siteniz tek bir <a href=\"https:\/\/www.ihs.com.tr\/sunucu-kiralama\/vds-sunucu.html\" target=\"_blank\">VDS<\/a> \u00fczerinde \u00e7al\u0131\u015fm\u0131yorsa veya performans sorunlar\u0131 ya\u015f\u0131yorsan\u0131z, ETags&#8217;i devre d\u0131\u015f\u0131 b\u0131rakmak ve bunun yerine &#8220;Expires Headers&#8221;a g\u00fcvenmek daha iyi bir strateji olabilir. ETags&#8217;i kapatmak i\u00e7in .htaccess dosyan\u0131za a\u015fa\u011f\u0131daki sat\u0131r\u0131 ekleyebilirsiniz:<\/p>\n<p><code>Header unset ETag<\/code><br \/><code>FileETag None<\/code><\/p>\n<h2><span class=\"ez-toc-section\" id=\"htaccess-Dosyasini-Yonetme-ve-Sorun-Giderme\"><\/span>.htaccess Dosyas\u0131n\u0131 Y\u00f6netme ve Sorun Giderme<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>.htaccess dosyas\u0131, sitenizin i\u015fleyi\u015fi \u00fczerinde b\u00fcy\u00fck bir g\u00fcce sahip oldu\u011fu i\u00e7in dikkatli bir \u015fekilde y\u00f6netilmelidir. \u0130\u00e7ine eklenen hatal\u0131 bir kod veya hatta tek bir yaz\u0131m yanl\u0131\u015f\u0131 bile sitenizin tamamen eri\u015filemez hale gelmesine neden olabilir. Bu nedenle, d\u00fczenleme yapmadan \u00f6nce gerekli \u00f6nlemleri almak ve olas\u0131 sorunlar\u0131 nas\u0131l \u00e7\u00f6zece\u011finizi bilmek hayati \u00f6nem ta\u015f\u0131r.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"htaccess-Dosyasini-Duzenlemeden-Once-Yapilmasi-Gerekenler-Yedekleme\"><\/span>.htaccess Dosyas\u0131n\u0131 D\u00fczenlemeden \u00d6nce Yap\u0131lmas\u0131 Gerekenler: Yedekleme<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><b>Kural 1:<\/b> .htaccess dosyas\u0131n\u0131 d\u00fczenlemeden \u00f6nce <b>mutlaka<\/b> bir yede\u011fini al\u0131n. Bu, en \u00f6nemli ve atlanmamas\u0131 gereken ad\u0131md\u0131r. Bir sorunla kar\u015f\u0131la\u015ft\u0131\u011f\u0131n\u0131zda, \u00e7al\u0131\u015fan son s\u00fcr\u00fcme geri d\u00f6nebilmek sizi b\u00fcy\u00fck bir dertten kurtar\u0131r. Yedekleme i\u015flemi son derece basittir:<\/p>\n<ol>\n<li>FTP istemciniz veya cPanel Dosya Y\u00f6neticisi ile sunucunuza ba\u011flan\u0131n.<\/li>\n<li>Mevcut <code>.htaccess<\/code> dosyas\u0131n\u0131 bulun.<\/li>\n<li>Dosyay\u0131 bilgisayar\u0131n\u0131za indirin veya sunucu \u00fczerinde ad\u0131n\u0131 <code>.htaccess_backup<\/code> olarak de\u011fi\u015ftirerek kopyas\u0131n\u0131 olu\u015fturun.<\/li>\n<\/ol>\n<p>Bu basit i\u015flem, olas\u0131 bir hatada sitenizi saniyeler i\u00e7inde eski haline getirmenizi sa\u011flar.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"htaccess-Dosyasinda-Yapilan-Hatalarin-Yol-Actigi-Sorunlar\"><\/span>.htaccess Dosyas\u0131nda Yap\u0131lan Hatalar\u0131n Yol A\u00e7t\u0131\u011f\u0131 Sorunlar<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Hatal\u0131 bir .htaccess yap\u0131land\u0131rmas\u0131, \u00e7e\u015fitli ve genellikle siteyi tamamen bozan sorunlara yol a\u00e7abilir. En yayg\u0131n kar\u015f\u0131la\u015f\u0131lan problemler \u015funlard\u0131r:<\/p>\n<h4>500 Internal Server Error (\u0130\u00e7 Sunucu Hatas\u0131) ve \u00c7\u00f6z\u00fcm\u00fc<\/h4>\n<p>Bu, .htaccess ile ilgili en yayg\u0131n hatad\u0131r. Genellikle kodun i\u00e7inde bir yaz\u0131m hatas\u0131 (syntax error), tan\u0131nmayan bir komut veya mod\u00fcl\u00fcn sunucuda aktif olmamas\u0131ndan kaynaklan\u0131r. \u00d6rne\u011fin, <code>&lt;IfModule mod_rewrite.c&gt;<\/code> blo\u011fu olmadan bir <code>RewriteRule<\/code> kullanmaya \u00e7al\u0131\u015fmak bu hataya neden olabilir.<\/p>\n<p><b>\u00c7\u00f6z\u00fcm\u00fc:<\/b><\/p>\n<ul>\n<li><b>Yede\u011fi Geri Y\u00fckleyin:<\/b> En h\u0131zl\u0131 ve en g\u00fcvenli \u00e7\u00f6z\u00fcm, d\u00fczenlemeden \u00f6nce ald\u0131\u011f\u0131n\u0131z yede\u011fi geri y\u00fcklemektir. Hatal\u0131 dosyay\u0131 silin ve yede\u011fin ad\u0131n\u0131 tekrar <code>.htaccess<\/code> olarak de\u011fi\u015ftirin.<\/li>\n<li><b>Son Eklemenizi Kontrol Edin:<\/b> E\u011fer yede\u011finiz yoksa, dosyay\u0131 a\u00e7\u0131n ve en son ekledi\u011finiz kod blo\u011funu silerek kaydedin. Site tekrar \u00e7al\u0131\u015f\u0131rsa, sorun o kod blo\u011fundad\u0131r. Kodu dikkatlice kontrol edin, yaz\u0131m hatalar\u0131n\u0131 d\u00fczeltin veya alternatif bir kod aray\u0131n.<\/li>\n<\/ul>\n<h4>Y\u00f6nlendirme D\u00f6ng\u00fcleri (Redirection Loops)<\/h4>\n<p>Bir <a href=\"https:\/\/www.ihs.com.tr\/blog\/url-nedir\/\" target=\"_blank\">URL<\/a>&#8216;yi kendisine veya birbiriyle \u00e7ak\u0131\u015fan iki farkl\u0131 kural nedeniyle s\u00fcrekli ba\u015fka bir URL&#8217;ye y\u00f6nlendiren hatal\u0131 bir y\u00f6nlendirme yap\u0131land\u0131rmas\u0131, &#8220;ERR_TOO_MANY_REDIRECTS&#8221; hatas\u0131na neden olur. \u00d6rne\u011fin, A sayfas\u0131n\u0131 B&#8217;ye, B sayfas\u0131n\u0131 da tekrar A&#8217;ya y\u00f6nlendirmek bir d\u00f6ng\u00fc olu\u015fturur. Bu sorun genellikle www ve non-www y\u00f6nlendirmeleri ile HTTP&#8217;den HTTPS&#8217;ye y\u00f6nlendirme kurallar\u0131n\u0131n bir arada yanl\u0131\u015f yap\u0131land\u0131r\u0131lmas\u0131yla ortaya \u00e7\u0131kar.<\/p>\n<p><b>\u00c7\u00f6z\u00fcm\u00fc:<\/b> .htaccess dosyan\u0131zdaki t\u00fcm <code>Redirect<\/code> ve <code>RewriteRule<\/code> sat\u0131rlar\u0131n\u0131 dikkatlice inceleyin. Birbiriyle \u00e7ak\u0131\u015fan veya sonsuz bir d\u00f6ng\u00fcye neden olabilecek kurallar\u0131 bulun ve d\u00fczeltin. Genellikle sorunu bulana kadar y\u00f6nlendirme kurallar\u0131n\u0131 tek tek devre d\u0131\u015f\u0131 b\u0131rakarak (sat\u0131r\u0131n ba\u015f\u0131na # i\u015fareti koyarak) test etmek i\u015fe yarar.<\/p>\n<h4>Site Eri\u015filebilirlik Sorunlar\u0131<\/h4>\n<p>Bazen .htaccess&#8217;te yap\u0131lan bir hata, sitenin tamam\u0131n\u0131 de\u011fil ama belirli b\u00f6l\u00fcmlerini veya belirli dosya t\u00fcrlerini (resimler, CSS dosyalar\u0131 vb.) eri\u015filemez hale getirebilir. \u00d6rne\u011fin, hotlinking \u00f6nleme kodunu yanl\u0131\u015f yap\u0131land\u0131r\u0131rsan\u0131z, kendi sitenizdeki resimlerin bile g\u00f6r\u00fcnmesini engelleyebilirsiniz. Benzer \u015fekilde, hatal\u0131 bir dosya engelleme kural\u0131, sitenizin \u00e7al\u0131\u015fmas\u0131 i\u00e7in gerekli olan bir dosyaya eri\u015fimi kesebilir.<\/p>\n<p><b>\u00c7\u00f6z\u00fcm\u00fc:<\/b> Sorunun hangi b\u00f6l\u00fcm veya dosya t\u00fcr\u00fcnde oldu\u011funu tespit edin ve .htaccess dosyan\u0131zda bu alanlar\u0131 etkileyebilecek kurallar\u0131 (\u00f6rne\u011fin, <code>&lt;Files&gt;<\/code> veya <code>RewriteRule<\/code> bloklar\u0131) kontrol edin. Sorunlu kural\u0131 ge\u00e7ici olarak devre d\u0131\u015f\u0131 b\u0131rakarak sitenin d\u00fczelip d\u00fczelmedi\u011fini test edin.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"htaccess-Dosyasini-Varsayilan-WordPress-Ayarlarina-Geri-Dondurme\"><\/span>.htaccess Dosyas\u0131n\u0131 Varsay\u0131lan WordPress Ayarlar\u0131na Geri D\u00f6nd\u00fcrme<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>E\u011fer yapt\u0131\u011f\u0131n\u0131z t\u00fcm de\u011fi\u015fiklikler sitenizde \u00e7\u00f6zemedi\u011finiz sorunlara yol a\u00e7t\u0131ysa ve temiz bir ba\u015flang\u0131\u00e7 yapmak istiyorsan\u0131z, .htaccess dosyas\u0131n\u0131 WordPress&#8217;in varsay\u0131lan ayarlar\u0131na d\u00f6nd\u00fcrmek en kolay yoldur. Bu i\u015flem, ekledi\u011finiz t\u00fcm g\u00fcvenlik, performans ve y\u00f6nlendirme kurallar\u0131n\u0131 kald\u0131racak, sadece kal\u0131c\u0131 ba\u011flant\u0131lar\u0131n \u00e7al\u0131\u015fmas\u0131 i\u00e7in gereken temel kodlar\u0131 b\u0131rakacakt\u0131r.<\/p>\n<ol>\n<li>FTP veya Dosya Y\u00f6neticisi ile sunucunuza ba\u011flan\u0131n.<\/li>\n<li>Mevcut <code>.htaccess<\/code> dosyas\u0131n\u0131 silin veya ad\u0131n\u0131 <code>.htaccess_eski<\/code> olarak de\u011fi\u015ftirin.<\/li>\n<li>WordPress y\u00f6netici panelinize giri\u015f yap\u0131n.<\/li>\n<li><b>Ayarlar &gt; Kal\u0131c\u0131 Ba\u011flant\u0131lar<\/b> men\u00fcs\u00fcne gidin.<\/li>\n<li>Hi\u00e7bir ayar\u0131 de\u011fi\u015ftirmeden sayfan\u0131n alt\u0131ndaki &#8220;<b>De\u011fi\u015fiklikleri Kaydet<\/b>&#8221; butonuna t\u0131klay\u0131n.<\/li>\n<\/ol>\n<p>Bu i\u015flem, WordPress&#8217;in temiz ve varsay\u0131lan bir <code>.htaccess<\/code> dosyas\u0131n\u0131 otomatik olarak yeniden olu\u015fturmas\u0131n\u0131 sa\u011flayacakt\u0131r. Siteniz tekrar eri\u015filebilir hale geldikten sonra, eklemek istedi\u011finiz kurallar\u0131 tek tek ve test ederek yeniden ekleyebilirsiniz.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Guvenli-ve-Hizli-WordPress-Hosting-Icin-Neden-IHS-Telekomu-Tercih-Etmelisiniz\"><\/span>G\u00fcvenli ve H\u0131zl\u0131 WordPress Hosting \u0130\u00e7in Neden \u0130HS Telekom&#8217;u Tercih Etmelisiniz?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Bu makalede .htaccess dosyas\u0131 \u00fczerinden yapabilece\u011finiz say\u0131s\u0131z g\u00fcvenlik ve performans optimizasyonunu inceledik. Ancak t\u00fcm bu ayarlar\u0131n etkin bir \u015fekilde \u00e7al\u0131\u015fabilmesi, temelinde sa\u011flam, g\u00fcvenli ve modern bir hosting altyap\u0131s\u0131 gerektirir. \u0130\u015fte bu noktada \u0130HS Telekom, WordPress siteniz i\u00e7in ihtiya\u00e7 duydu\u011funuz g\u00fc\u00e7l\u00fc temeli sunar. Optimize edilmi\u015f sunucu yap\u0131land\u0131rmalar\u0131, g\u00fcncel yaz\u0131l\u0131mlar ve proaktif g\u00fcvenlik \u00f6nlemleri ile \u0130HS Telekom&#8217;un <a href=\"https:\/\/www.ihs.com.tr\/web-hosting\/wordpress-hosting.html\" target=\"_blank\">WordPress hosting<\/a> \u00e7\u00f6z\u00fcmleri, .htaccess ile yapt\u0131\u011f\u0131n\u0131z ince ayarlar\u0131n tam potansiyeline ula\u015fmas\u0131n\u0131 sa\u011flar. Sitenizin h\u0131z\u0131 ve g\u00fcvenli\u011fi i\u00e7in sadece .htaccess ayarlar\u0131na g\u00fcvenmek yerine, i\u015fini bilen bir hosting orta\u011f\u0131yla \u00e7al\u0131\u015fmak, size hem zaman kazand\u0131r\u0131r hem de web sitenizin kesintisiz ve sorunsuz \u00e7al\u0131\u015fmas\u0131n\u0131 garanti alt\u0131na al\u0131r. G\u00fc\u00e7l\u00fc bir altyap\u0131, yapt\u0131\u011f\u0131n\u0131z optimizasyonlar\u0131n ger\u00e7ek anlamda fark yaratmas\u0131n\u0131 sa\u011flayan en \u00f6nemli unsurdur.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>WordPress tabanl\u0131 bir web sitesi y\u00f6netiyorsan\u0131z, .htaccess dosyas\u0131n\u0131n g\u00fcc\u00fcn\u00fc anlamak ve do\u011fru \u015fekilde kullanmak, sitenizin hem g\u00fcvenli\u011fini hem de performans\u0131n\u0131 \u00f6nemli \u00f6l\u00e7\u00fcde&hellip;<\/p>\n","protected":false},"author":3,"featured_media":15933,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[397],"tags":[],"class_list":["post-15932","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-wordpress"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/posts\/15932","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/comments?post=15932"}],"version-history":[{"count":1,"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/posts\/15932\/revisions"}],"predecessor-version":[{"id":15934,"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/posts\/15932\/revisions\/15934"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/media\/15933"}],"wp:attachment":[{"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/media?parent=15932"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/categories?post=15932"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/tags?post=15932"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}