{"id":3905,"date":"2026-01-01T16:52:41","date_gmt":"2026-01-01T13:52:41","guid":{"rendered":"https:\/\/www.dchost.com\/blog\/seo-kaybi-olmadan-url-yapisini-degistirmek-htaccess-ve-nginx-301-yonlendirme-rehberi\/"},"modified":"2026-01-01T16:52:41","modified_gmt":"2026-01-01T13:52:41","slug":"seo-kaybi-olmadan-url-yapisini-degistirmek-htaccess-ve-nginx-301-yonlendirme-rehberi","status":"publish","type":"post","link":"https:\/\/www.dchost.com\/blog\/seo-kaybi-olmadan-url-yapisini-degistirmek-htaccess-ve-nginx-301-yonlendirme-rehberi\/","title":{"rendered":"SEO Kayb\u0131 Olmadan URL Yap\u0131s\u0131n\u0131 De\u011fi\u015ftirmek: .htaccess ve Nginx 301 Y\u00f6nlendirme Rehberi"},"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=\"#Neden_URL_Yapisi_Degistirmek_Riskli_Ama_Bazen_Gerekli\"><span class=\"toc_number toc_depth_1\">1<\/span> Neden URL Yap\u0131s\u0131 De\u011fi\u015ftirmek Riskli Ama Bazen Gerekli?<\/a><\/li><li><a href=\"#SEO_Perspektifinden_URL_Degisikliginin_Etkileri\"><span class=\"toc_number toc_depth_1\">2<\/span> SEO Perspektifinden URL De\u011fi\u015fikli\u011finin Etkileri<\/a><ul><li><a href=\"#URL_Degisikliginde_Sik_Gorulen_SEO_Problemleri\"><span class=\"toc_number toc_depth_2\">2.1<\/span> URL De\u011fi\u015fikli\u011finde S\u0131k G\u00f6r\u00fclen SEO Problemleri<\/a><\/li><\/ul><\/li><li><a href=\"#Planlama_URL_Haritasi_Cikarmak_ve_Strateji_Belirlemek\"><span class=\"toc_number toc_depth_1\">3<\/span> Planlama: URL Haritas\u0131 \u00c7\u0131karmak ve Strateji Belirlemek<\/a><ul><li><a href=\"#1_Mevcut_Tum_URLleri_Listeleyin\"><span class=\"toc_number toc_depth_2\">3.1<\/span> 1. Mevcut T\u00fcm URL\u2019leri Listeleyin<\/a><\/li><li><a href=\"#2_Yeni_URL_Tasarimini_Netlestirin\"><span class=\"toc_number toc_depth_2\">3.2<\/span> 2. Yeni URL Tasar\u0131m\u0131n\u0131 Netle\u015ftirin<\/a><\/li><li><a href=\"#3_Eski_Yeni_URL_Eslestirme_Tablosu_Olusturun\"><span class=\"toc_number toc_depth_2\">3.3<\/span> 3. Eski \u2192 Yeni URL E\u015fle\u015ftirme Tablosu Olu\u015fturun<\/a><\/li><li><a href=\"#4_Once_Staging_Ortaminda_Test_Edin\"><span class=\"toc_number toc_depth_2\">3.4<\/span> 4. \u00d6nce Staging Ortam\u0131nda Test Edin<\/a><\/li><\/ul><\/li><li><a href=\"#Apache_Uzerinde_htaccess_ile_301_Yonlendirme_Ornekleri\"><span class=\"toc_number toc_depth_1\">4<\/span> Apache \u00dczerinde .htaccess ile 301 Y\u00f6nlendirme \u00d6rnekleri<\/a><ul><li><a href=\"#htaccess_Dosyasinin_Temel_Iskeleti\"><span class=\"toc_number toc_depth_2\">4.1<\/span> .htaccess Dosyas\u0131n\u0131n Temel \u0130skeleti<\/a><\/li><li><a href=\"#1_Tek_Bir_URLyi_Yeni_URLye_301_ile_Tasimak\"><span class=\"toc_number toc_depth_2\">4.2<\/span> 1. Tek Bir URL\u2019yi Yeni URL\u2019ye 301 ile Ta\u015f\u0131mak<\/a><\/li><li><a href=\"#2_Tum_Siteyi_Yeni_Alan_Adina_Yonlendirmek\"><span class=\"toc_number toc_depth_2\">4.3<\/span> 2. T\u00fcm Siteyi Yeni Alan Ad\u0131na Y\u00f6nlendirmek<\/a><\/li><li><a href=\"#3_Eski_Klasoru_Yeni_Klasore_Tasimak\"><span class=\"toc_number toc_depth_2\">4.4<\/span> 3. Eski Klas\u00f6r\u00fc Yeni Klas\u00f6re Ta\u015f\u0131mak<\/a><\/li><li><a href=\"#4_Query_Stringli_Eski_Yapidan_Temiz_Permalinke_Gecmek\"><span class=\"toc_number toc_depth_2\">4.5<\/span> 4. Query String\u2019li Eski Yap\u0131dan Temiz Permalink\u2019e Ge\u00e7mek<\/a><\/li><li><a href=\"#5_www_non-www_veya_HTTP_HTTPS_Zorunlu_Yonlendirme\"><span class=\"toc_number toc_depth_2\">4.6<\/span> 5. www \u2194 non-www veya HTTP \u2192 HTTPS Zorunlu Y\u00f6nlendirme<\/a><\/li><\/ul><\/li><li><a href=\"#Nginx_ile_301_Yonlendirme_Kurallari\"><span class=\"toc_number toc_depth_1\">5<\/span> Nginx ile 301 Y\u00f6nlendirme Kurallar\u0131<\/a><ul><li><a href=\"#1_Tek_Bir_URLyi_301_ile_Yonlendirmek\"><span class=\"toc_number toc_depth_2\">5.1<\/span> 1. Tek Bir URL\u2019yi 301 ile Y\u00f6nlendirmek<\/a><\/li><li><a href=\"#2_Tum_Siteyi_Yeni_Alan_Adina_Tasimak\"><span class=\"toc_number toc_depth_2\">5.2<\/span> 2. T\u00fcm Siteyi Yeni Alan Ad\u0131na Ta\u015f\u0131mak<\/a><\/li><li><a href=\"#3_Eski_Klasorden_Yeni_Klasore_Gecis\"><span class=\"toc_number toc_depth_2\">5.3<\/span> 3. Eski Klas\u00f6rden Yeni Klas\u00f6re Ge\u00e7i\u015f<\/a><\/li><li><a href=\"#4_Query_Stringe_Gore_Yonlendirme\"><span class=\"toc_number toc_depth_2\">5.4<\/span> 4. Query String\u2019e G\u00f6re Y\u00f6nlendirme<\/a><\/li><li><a href=\"#5_www_non-www_ve_HTTP_HTTPS_Zorunlu_Yonlendirme\"><span class=\"toc_number toc_depth_2\">5.5<\/span> 5. www \u2194 non-www ve HTTP \u2192 HTTPS Zorunlu Y\u00f6nlendirme<\/a><\/li><\/ul><\/li><li><a href=\"#WordPress_Laravel_ve_E-Ticaret_Siteleri_Icin_Ozel_Senaryolar\"><span class=\"toc_number toc_depth_1\">6<\/span> WordPress, Laravel ve E-Ticaret Siteleri \u0130\u00e7in \u00d6zel Senaryolar<\/a><ul><li><a href=\"#1_WordPress_Permalink_Yapisini_Degistirmek\"><span class=\"toc_number toc_depth_2\">6.1<\/span> 1. WordPress Permalink Yap\u0131s\u0131n\u0131 De\u011fi\u015ftirmek<\/a><\/li><li><a href=\"#2_Laravel_ve_Ozel_PHP_Uygulamalarinda_Route_Degisiklikleri\"><span class=\"toc_number toc_depth_2\">6.2<\/span> 2. Laravel ve \u00d6zel PHP Uygulamalar\u0131nda Route De\u011fi\u015fiklikleri<\/a><\/li><li><a href=\"#3_E-Ticaret_Sitelerinde_Kategori_ve_Filtre_Yapisini_Degistirmek\"><span class=\"toc_number toc_depth_2\">6.3<\/span> 3. E-Ticaret Sitelerinde Kategori ve Filtre Yap\u0131s\u0131n\u0131 De\u011fi\u015ftirmek<\/a><\/li><\/ul><\/li><li><a href=\"#Degisiklik_Sonrasi_Kontrol_Listesi\"><span class=\"toc_number toc_depth_1\">7<\/span> De\u011fi\u015fiklik Sonras\u0131 Kontrol Listesi<\/a><ul><li><a href=\"#1_404_ve_5xx_Hatalarini_Izleyin\"><span class=\"toc_number toc_depth_2\">7.1<\/span> 1. 404 ve 5xx Hatalar\u0131n\u0131 \u0130zleyin<\/a><\/li><li><a href=\"#2_Sitemap_ve_robotstxtyi_Guncelleyin\"><span class=\"toc_number toc_depth_2\">7.2<\/span> 2. Sitemap ve robots.txt\u2019yi G\u00fcncelleyin<\/a><\/li><li><a href=\"#3_Ic_Linkleri_ve_Kanonik_Etiketleri_Guncelleyin\"><span class=\"toc_number toc_depth_2\">7.3<\/span> 3. \u0130\u00e7 Linkleri ve Kanonik Etiketleri G\u00fcncelleyin<\/a><\/li><li><a href=\"#4_Google_Search_Console_ve_Analitik_Araclari_Takibi\"><span class=\"toc_number toc_depth_2\">7.4<\/span> 4. Google Search Console ve Analitik Ara\u00e7lar\u0131 Takibi<\/a><\/li><\/ul><\/li><li><a href=\"#DCHost_Uzerinde_Bu_Sureci_Nasil_Yonetiyoruz\"><span class=\"toc_number toc_depth_1\">8<\/span> DCHost \u00dczerinde Bu S\u00fcreci Nas\u0131l Y\u00f6netiyoruz?<\/a><\/li><li><a href=\"#Ozet_ve_Son_Tavsiyeler\"><span class=\"toc_number toc_depth_1\">9<\/span> \u00d6zet ve Son Tavsiyeler<\/a><\/li><\/ul><\/div>\n<h2><span id=\"Neden_URL_Yapisi_Degistirmek_Riskli_Ama_Bazen_Gerekli\">Neden URL Yap\u0131s\u0131 De\u011fi\u015ftirmek Riskli Ama Bazen Gerekli?<\/span><\/h2>\n<p>URL yap\u0131n\u0131z\u0131 de\u011fi\u015ftirmek, hem teknik hem de SEO taraf\u0131nda en hassas operasyonlardan biridir. Bir yandan daha okunabilir, k\u0131sa ve anahtar kelime odakl\u0131 URL\u2019ler SEO performans\u0131n\u0131 uzun vadede g\u00fc\u00e7lendirir; di\u011fer yandan yanl\u0131\u015f kurgulanm\u0131\u015f bir ge\u00e7i\u015f, y\u0131llard\u0131r biriken otoritenizi birka\u00e7 g\u00fcnde eritebilir. DCHost taraf\u0131nda yeni projeler planlarken, mimari tasar\u0131m toplant\u0131lar\u0131nda en \u00e7ok konu\u015ftu\u011fumuz ba\u015fl\u0131klardan biri de tam olarak bu: \u201cURL yap\u0131s\u0131n\u0131 nas\u0131l iyile\u015ftiririz ve bunu yaparken hi\u00e7bir \u015feyi k\u0131rmay\u0131z?\u201d<\/p>\n<p>Bu yaz\u0131da <strong>SEO kayb\u0131 olmadan URL yap\u0131s\u0131 de\u011fi\u015ftirmek<\/strong> i\u00e7in ba\u015ftan sona teknik bir yol haritas\u0131 payla\u015faca\u011f\u0131z. Hem <strong>Apache\/.htaccess<\/strong> hem de <strong>Nginx<\/strong> \u00fczerinde 301 y\u00f6nlendirme \u00f6rnekleri, s\u0131k yap\u0131lan hatalar, test y\u00f6ntemleri ve log analizi dahil olacak. E\u011fer alan ad\u0131 da de\u011fi\u015ftiriyorsan\u0131z, mutlaka \u00f6nce <a href=\"https:\/\/www.dchost.com\/blog\/alan-adi-degistirirken-seo-kaybetmemek\/\">alan ad\u0131 de\u011fi\u015ftirirken SEO kaybetmemek i\u00e7in haz\u0131rlad\u0131\u011f\u0131m\u0131z rehbere<\/a> de g\u00f6z atman\u0131z\u0131 \u00f6neririm; bu yaz\u0131 ise \u00f6zellikle <strong>ayn\u0131 alan ad\u0131nda URL yap\u0131s\u0131n\u0131 de\u011fi\u015ftirme<\/strong> k\u0131sm\u0131na odaklan\u0131yor.<\/p>\n<p>Ayr\u0131ca HTTP durum kodlar\u0131n\u0131n SEO\u2019ya etkisini hen\u00fcz netle\u015ftirmediyseniz, arka planda nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 anlamak i\u00e7in <a href=\"https:\/\/www.dchost.com\/blog\/http-durum-kodlari-seo-ve-hosting-icin-301-302-404-410-ve-5xx-rehberi\/\">301, 302, 404 ve 410 durum kodlar\u0131n\u0131 anlatt\u0131\u011f\u0131m\u0131z detayl\u0131 rehber<\/a> de bu makalenin iyi bir tamamlay\u0131c\u0131s\u0131 olacakt\u0131r.<\/p>\n<h2><span id=\"SEO_Perspektifinden_URL_Degisikliginin_Etkileri\">SEO Perspektifinden URL De\u011fi\u015fikli\u011finin Etkileri<\/span><\/h2>\n<p>Google ve di\u011fer arama motorlar\u0131 i\u00e7in URL, bir sayfan\u0131n benzersiz kimli\u011fidir. Siz URL\u2019yi de\u011fi\u015ftirdi\u011finizde, arama motorunun g\u00f6z\u00fcnde yeni bir sayfa olu\u015fturmu\u015f olursunuz. Bu y\u00fczden, eski URL\u2019den yeni URL\u2019ye <strong>do\u011fru HTTP durum kodu<\/strong> ile sinyal g\u00f6ndermek kritik \u00f6nem ta\u015f\u0131r.<\/p>\n<p>Burada temel prensipleri netle\u015ftirelim:<\/p>\n<ul>\n<li><strong>301 (Moved Permanently)<\/strong>: Kal\u0131c\u0131 ta\u015f\u0131nma sinyalidir; link otoritesinin (link juice) b\u00fcy\u00fck k\u0131sm\u0131n\u0131 yeni URL\u2019ye ta\u015f\u0131r.<\/li>\n<li><strong>302\/307 (Temporary Redirect)<\/strong>: Ge\u00e7ici y\u00f6nlendirmedir; uzun vadeli URL de\u011fi\u015fikliklerinde SEO i\u00e7in do\u011fru tercih de\u011fildir.<\/li>\n<li><strong>404 (Not Found)<\/strong>: \u0130\u00e7erik ger\u00e7ekten yoksa kullan\u0131lmal\u0131; fazla 404, site kalitesine olumsuz sinyal verir.<\/li>\n<li><strong>410 (Gone)<\/strong>: \u0130\u00e7eri\u011fin kal\u0131c\u0131 olarak kald\u0131r\u0131ld\u0131\u011f\u0131n\u0131 net \u015fekilde bildirir; baz\u0131 durumlarda 404\u2019ten daha uygun olabilir.<\/li>\n<\/ul>\n<p>URL yap\u0131s\u0131n\u0131 de\u011fi\u015ftirirken amac\u0131m\u0131z, eski t\u00fcm URL\u2019leri <strong>tek seferde ve kal\u0131c\u0131 olarak<\/strong> yeni kar\u015f\u0131l\u0131klar\u0131na ta\u015f\u0131mak. Bu y\u00fczden neredeyse her zaman <strong>301 y\u00f6nlendirme<\/strong> kullanaca\u011f\u0131z.<\/p>\n<h3><span id=\"URL_Degisikliginde_Sik_Gorulen_SEO_Problemleri\">URL De\u011fi\u015fikli\u011finde S\u0131k G\u00f6r\u00fclen SEO Problemleri<\/span><\/h3>\n<ul>\n<li>Yanl\u0131\u015fl\u0131kla 302 kullanmak ve otorite transferini geciktirmek<\/li>\n<li>Eski URL\u2019ye birden fazla \u201czincirli\u201d y\u00f6nlendirme (301 \u2192 302 \u2192 301 gibi) uygulamak<\/li>\n<li>Eski URL\u2019yi yeni URL yerine ana sayfaya y\u00f6nlendirmek (soft 404 etkisi)<\/li>\n<li>Yeni URL\u2019leri sitemap\u2019e eklemeyi unutmak<\/li>\n<li>\u0130\u00e7 linkleri g\u00fcncellemeden b\u0131rakmak ve \u201cgizli\u201d redirect zincirleri olu\u015fturmak<\/li>\n<\/ul>\n<p>Bu hatalardan ka\u00e7\u0131nmak i\u00e7in, URL de\u011fi\u015fikli\u011fini di\u011fer SEO bile\u015fenleriyle birlikte ele almak gerekir. \u00d6zellikle <a href=\"https:\/\/www.dchost.com\/blog\/robots-txt-ve-sitemap-xml-dogru-kurulumu-adim-adim-seo-ve-hosting-rehberi\/\">robots.txt ve sitemap.xml kurulum rehberimizde<\/a> anlatt\u0131\u011f\u0131m\u0131z prensipleri bu s\u00fcrece entegre etmek, arama motorlar\u0131n\u0131n yeni yap\u0131n\u0131z\u0131 daha h\u0131zl\u0131 anlamas\u0131n\u0131 sa\u011flar.<\/p>\n<h2><span id=\"Planlama_URL_Haritasi_Cikarmak_ve_Strateji_Belirlemek\">Planlama: URL Haritas\u0131 \u00c7\u0131karmak ve Strateji Belirlemek<\/span><\/h2>\n<p>\u0130yi planlanmam\u0131\u015f bir URL ge\u00e7i\u015fi, ne kadar d\u00fczg\u00fcn 301 kural\u0131 yazarsan\u0131z yaz\u0131n mutlaka bir yerlerden s\u0131zar. DCHost\u2019ta bu t\u00fcr ge\u00e7i\u015flerde her zaman \u00f6nce <strong>URL haritas\u0131<\/strong> \u00e7\u0131kar\u0131yoruz. Ad\u0131m ad\u0131m gidelim:<\/p>\n<h3><span id=\"1_Mevcut_Tum_URLleri_Listeleyin\">1. Mevcut T\u00fcm URL\u2019leri Listeleyin<\/span><\/h3>\n<p>\u00d6nce ger\u00e7ekten hangi URL\u2019lere sahip oldu\u011funuzu netle\u015ftirmeniz gerekiyor:<\/p>\n<ul>\n<li>CMS (WordPress, Laravel admin, \u00f6zel panel) i\u00e7inden URL export\u2019u<\/li>\n<li>Veritaban\u0131ndan yaz\u0131, \u00fcr\u00fcn, kategori vb. slug\/ID listeleri<\/li>\n<li>Sunucu eri\u015fiminiz varsa Apache\/Nginx log\u2019lar\u0131ndan en \u00e7ok hit alan URL\u2019ler<\/li>\n<li>Google Search Console ve Analytics\u2019ten organik trafik alan URL listeleri<\/li>\n<\/ul>\n<p>\u00d6zellikle log analizine merakl\u0131ysan\u0131z, <a href=\"https:\/\/www.dchost.com\/blog\/hosting-sunucu-loglarini-okumayi-ogrenin-apache-ve-nginx-ile-4xx-5xx-hatalarini-teshis-rehberi\/\">Apache ve Nginx loglar\u0131n\u0131 okuma rehberi<\/a> bu a\u015famada i\u015finizi kolayla\u015ft\u0131r\u0131r. En \u00e7ok trafik alan URL\u2019leri net g\u00f6rmek, \u00f6nceliklendirme yapman\u0131z\u0131 sa\u011flar.<\/p>\n<h3><span id=\"2_Yeni_URL_Tasarimini_Netlestirin\">2. Yeni URL Tasar\u0131m\u0131n\u0131 Netle\u015ftirin<\/span><\/h3>\n<p>URL yap\u0131s\u0131n\u0131 de\u011fi\u015ftirme motivasyonlar\u0131n\u0131z genelde \u015funlar olur:<\/p>\n<ul>\n<li>Dinamik parametrelerden (id=123 gibi) SEO dostu slug\u2019lara ge\u00e7mek<\/li>\n<li>Uzun URL\u2019leri k\u0131saltmak (\u00f6zellikle tarih i\u00e7eren yap\u0131lar)<\/li>\n<li>Kategori\/etiket hiyerar\u015fisini sadele\u015ftirmek<\/li>\n<li>\u00c7ok dilli yap\u0131da \/en\/, \/de\/ gibi dil dizinlerine ge\u00e7mek<\/li>\n<\/ul>\n<p>Burada \u00f6nemli nokta, yeni yap\u0131n\u0131z\u0131n <strong>en az 3\u20135 y\u0131l dayan\u0131kl\u0131<\/strong> olacak \u015fekilde tasarlanmas\u0131. S\u0131k s\u0131k URL yap\u0131s\u0131 de\u011fi\u015ftirmek, arama motorlar\u0131n\u0131n g\u00fcvenini ciddi \u015fekilde zedeler. \u00c7ok dilli yap\u0131lar ve blog\/ma\u011faza ayr\u0131m\u0131 gibi konularda daha geni\u015f resme bakmak istiyorsan\u0131z, <a href=\"https:\/\/www.dchost.com\/blog\/subdomain-mi-alt-dizin-mi-blog-magaza-ve-dil-surumleri-icin-seo-ve-hosting-karsilastirmasi\/\">subdomain mi alt dizin mi rehberi<\/a> size iyi fikir verecektir.<\/p>\n<h3><span id=\"3_Eski_Yeni_URL_Eslestirme_Tablosu_Olusturun\">3. Eski \u2192 Yeni URL E\u015fle\u015ftirme Tablosu Olu\u015fturun<\/span><\/h3>\n<p>Art\u0131k iki listemiz var: mevcut URL\u2019ler ve tasarlad\u0131\u011f\u0131n\u0131z yeni yap\u0131. \u015eimdi bir <strong>e\u015fle\u015ftirme tablosu<\/strong> haz\u0131rlamal\u0131s\u0131n\u0131z. \u00d6rne\u011fin bir elektronik ticaret sitesi i\u00e7in:<\/p>\n<ul>\n<li><code>\/urun.php?id=123<\/code> \u2192 <code>\/urun\/iphone-15-pro\/<\/code><\/li>\n<li><code>\/kategori.php?id=12<\/code> \u2192 <code>\/kategori\/telefon\/<\/code><\/li>\n<li><code>\/blog_detay.php?id=45<\/code> \u2192 <code>\/blog\/seo-url-yapisi-degistirme\/<\/code><\/li>\n<\/ul>\n<p>E\u011fer URL say\u0131n\u0131z binlerce ise, tek tek e\u015fle\u015ftirme yapmak zor olabilir. Bu durumda <strong>desen bazl\u0131 (pattern) y\u00f6nlendirmeler<\/strong> kullanaca\u011f\u0131z. Birazdan hem .htaccess hem Nginx taraf\u0131nda pratik regex \u00f6rnekleriyle bunu g\u00f6sterece\u011fim.<\/p>\n<h3><span id=\"4_Once_Staging_Ortaminda_Test_Edin\">4. \u00d6nce Staging Ortam\u0131nda Test Edin<\/span><\/h3>\n<p>Canl\u0131 ortamda deneme yapmak, \u00f6zellikle y\u00fcksek trafikli WordPress ve e-ticaret sitelerinde gereksiz risk alman\u0131z anlam\u0131na gelir. Bu y\u00fczden m\u00fcmk\u00fcnse \u00f6nce bir <strong>staging\/test ortam\u0131<\/strong> kurun. <a href=\"https:\/\/www.dchost.com\/tr\/web-hosting\">payla\u015f\u0131ml\u0131 hosting<\/a> kullan\u0131yorsan\u0131z, ad\u0131m ad\u0131m nas\u0131l staging ortam\u0131 kurabilece\u011finizi <a href=\"https:\/\/www.dchost.com\/blog\/paylasimli-hostingde-wordpress-staging-ortami-kurmak-adim-adim-uygulamali-rehber\/\">WordPress staging rehberimizde<\/a> ayr\u0131nt\u0131l\u0131 \u015fekilde anlatt\u0131k.<\/p>\n<h2><span id=\"Apache_Uzerinde_htaccess_ile_301_Yonlendirme_Ornekleri\">Apache \u00dczerinde .htaccess ile 301 Y\u00f6nlendirme \u00d6rnekleri<\/span><\/h2>\n<p>Apache kullanan \u00e7o\u011fu hosting hesab\u0131nda, y\u00f6nlendirmeleri <strong>.htaccess<\/strong> dosyas\u0131 \u00fczerinden y\u00f6netiyoruz. A\u015fa\u011f\u0131daki \u00f6rneklerde <code>mod_rewrite<\/code> etkin olmak zorunda, \u00e7o\u011fu payla\u015f\u0131ml\u0131 hosting ve DCHost Apache ortam\u0131nda zaten varsay\u0131lan olarak a\u00e7\u0131k gelir.<\/p>\n<h3><span id=\"htaccess_Dosyasinin_Temel_Iskeleti\">.htaccess Dosyas\u0131n\u0131n Temel \u0130skeleti<\/span><\/h3>\n<pre class=\"language-bash line-numbers\"><code class=\"language-bash\">RewriteEngine On\n\n# Gerekirse buraya kurallar gelecek<\/code><\/pre>\n<p>E\u011fer mevcut .htaccess\u2019inizde WordPress, Laravel veya ba\u015fka bir uygulaman\u0131n kurallar\u0131 varsa, yeni y\u00f6nlendirmelerinizi genellikle <strong>bu kurallar\u0131n \u00fczerine<\/strong> eklemeniz gerekir; aksi halde uygulama kurallar\u0131 \u00f6nce \u00e7al\u0131\u015f\u0131p sizin yazd\u0131\u011f\u0131n\u0131z y\u00f6nlendirmeleri bo\u015fa d\u00fc\u015f\u00fcrebilir.<\/p>\n<h3><span id=\"1_Tek_Bir_URLyi_Yeni_URLye_301_ile_Tasimak\">1. Tek Bir URL\u2019yi Yeni URL\u2019ye 301 ile Ta\u015f\u0131mak<\/span><\/h3>\n<p>En basit senaryo: Tek bir eski URL\u2019yi yeni bir URL\u2019ye kal\u0131c\u0131 olarak y\u00f6nlendirmek.<\/p>\n<pre class=\"language-bash line-numbers\"><code class=\"language-bash\">RewriteEngine On\n\nRewriteRule ^eski-sayfa$ yeni-sayfa [R=301,L]<\/code><\/pre>\n<ul>\n<li><code>^eski-sayfa$<\/code> ile dizin k\u00f6k\u00fcndeki <code>\/eski-sayfa<\/code> hedefleniyor.<\/li>\n<li>Taray\u0131c\u0131ya ve arama motoruna 301 sinyali g\u00f6nderiliyor.<\/li>\n<\/ul>\n<p>E\u011fer URL\u2019niz uzant\u0131l\u0131 ise (<code>eski-sayfa.html<\/code> gibi), deseni \u015fu \u015fekilde g\u00fcncelleyin:<\/p>\n<pre class=\"language-bash line-numbers\"><code class=\"language-bash\">RewriteRule ^eski-sayfa.html$ yeni-sayfa [R=301,L]<\/code><\/pre>\n<h3><span id=\"2_Tum_Siteyi_Yeni_Alan_Adina_Yonlendirmek\">2. T\u00fcm Siteyi Yeni Alan Ad\u0131na Y\u00f6nlendirmek<\/span><\/h3>\n<p>Ayn\u0131 anda hem alan ad\u0131n\u0131 hem URL yap\u0131s\u0131n\u0131 de\u011fi\u015ftiriyorsan\u0131z, \u00f6ncelikle <strong>alan ad\u0131 ta\u015f\u0131ma stratejisini<\/strong> netle\u015ftirmeniz gerekir. Bu konuda detayl\u0131 bir rehberi zaten haz\u0131rlad\u0131k: <a href=\"https:\/\/www.dchost.com\/blog\/alan-adi-degistirirken-seo-kaybetmemek\/\">alan ad\u0131 de\u011fi\u015ftirirken SEO kayb\u0131n\u0131 \u00f6nleme k\u0131lavuzu<\/a>. Burada yaln\u0131zca teknik \u00f6rne\u011fi g\u00f6sterelim:<\/p>\n<pre class=\"language-bash line-numbers\"><code class=\"language-bash\">RewriteEngine On\n\nRewriteCond %{HTTP_HOST} ^eskidomain.com$ [NC]\nRewriteRule ^(.*)$ https:\/\/yenidomain.com\/$1 [R=301,L]<\/code><\/pre>\n<p>Bu kural:<\/p>\n<ul>\n<li><code>eskidomain.com<\/code> alt\u0131ndaki t\u00fcm URL\u2019leri<\/li>\n<li>yeni domain alt\u0131ndaki ayn\u0131 path\u2019e 301 ile ta\u015f\u0131r<\/li>\n<\/ul>\n<p>Bundan sonra, yeni domain alt\u0131nda ek URL yap\u0131s\u0131 de\u011fi\u015fiklikleri yapacaksan\u0131z, kurallar\u0131 <strong>yenidomain.com<\/strong> \u00fczerinde ayr\u0131 .htaccess\/Nginx bloklar\u0131nda y\u00f6netmelisiniz.<\/p>\n<h3><span id=\"3_Eski_Klasoru_Yeni_Klasore_Tasimak\">3. Eski Klas\u00f6r\u00fc Yeni Klas\u00f6re Ta\u015f\u0131mak<\/span><\/h3>\n<p>\u00d6rne\u011fin <code>\/blog\/<\/code> dizininizi <code>\/icerik\/<\/code> dizinine ta\u015f\u0131d\u0131n\u0131z. Eski linklerin bo\u015fa d\u00fc\u015fmemesi i\u00e7in:<\/p>\n<pre class=\"language-bash line-numbers\"><code class=\"language-bash\">RewriteEngine On\n\nRewriteRule ^blog\/(.*)$ icerik\/$1 [R=301,L]<\/code><\/pre>\n<p>Bu sayede:<\/p>\n<ul>\n<li><code>\/blog\/seo-url-yapisi-degistirme\/<\/code> \u2192 <code>\/icerik\/seo-url-yapisi-degistirme\/<\/code><\/li>\n<li><code>\/blog\/kategori\/teknoloji\/<\/code> \u2192 <code>\/icerik\/kategori\/teknoloji\/<\/code><\/li>\n<\/ul>\n<h3><span id=\"4_Query_Stringli_Eski_Yapidan_Temiz_Permalinke_Gecmek\">4. Query String\u2019li Eski Yap\u0131dan Temiz Permalink\u2019e Ge\u00e7mek<\/span><\/h3>\n<p>Dinamik parametre kullanan eski yap\u0131lar SEO a\u00e7\u0131s\u0131ndan problemli olabilir. \u00d6rne\u011fin:<\/p>\n<ul>\n<li><code>\/urun.php?id=123<\/code> yerine <code>\/urun\/iphone-15-pro\/<\/code><\/li>\n<\/ul>\n<p>Bu durumda, \u00e7o\u011fu zaman \u00fcr\u00fcn slug\u2019\u0131n\u0131 veritaban\u0131ndan \u00e7ekip .htaccess\u2019te otomatik \u00fcretmek m\u00fcmk\u00fcn olmaz; genelde URL e\u015fle\u015ftirme tablosunu kullan\u0131p tek tek kural yazar\u0131z:<\/p>\n<pre class=\"language-bash line-numbers\"><code class=\"language-bash\">RewriteEngine On\n\nRewriteCond %{QUERY_STRING} ^id=123$ [NC]\nRewriteRule ^urun.php$ urun\/iphone-15-pro\/? [R=301,L]\n\nRewriteCond %{QUERY_STRING} ^id=124$ [NC]\nRewriteRule ^urun.php$ urun\/samsung-galaxy-s24\/? [R=301,L]<\/code><\/pre>\n<p>Buradaki <code>?<\/code>, eski query string\u2019in yeni URL\u2019ye ta\u015f\u0131nmamas\u0131n\u0131 sa\u011flar. Yani kullan\u0131c\u0131 <code>\/urun.php?id=123<\/code>\u2019ye geldi\u011finde <code>\/urun\/iphone-15-pro\/<\/code> adresine, parametresiz \u015fekilde y\u00f6nlendirilir.<\/p>\n<h3><span id=\"5_www_non-www_veya_HTTP_HTTPS_Zorunlu_Yonlendirme\">5. www \u2194 non-www veya HTTP \u2192 HTTPS Zorunlu Y\u00f6nlendirme<\/span><\/h3>\n<p>URL yap\u0131s\u0131 de\u011fi\u015fikli\u011finden ba\u011f\u0131ms\u0131z olarak, site mimarinizi tek bir kanonik ana domain \u00fczerinde toplamak zorundas\u0131n\u0131z. <a href=\"https:\/\/www.dchost.com\/blog\/httpden-httpse-gecis-rehberi-301-yonlendirme-hsts-ve-seoyu-korumak\/\">HTTP\u2019den HTTPS\u2019e ge\u00e7i\u015f rehberimizde<\/a> bu konuyu detayl\u0131 i\u015fledik; burada k\u0131sa bir \u00f6rnek verelim:<\/p>\n<pre class=\"language-bash line-numbers\"><code class=\"language-bash\">RewriteEngine On\n\n# www'den non-www'ye zorunlu y\u00f6nlendirme\nRewriteCond %{HTTP_HOST} ^www.siteadiniz.com$ [NC]\nRewriteRule ^(.*)$ https:\/\/siteadiniz.com\/$1 [R=301,L]<\/code><\/pre>\n<p>Bu kural, URL yap\u0131s\u0131 de\u011fi\u015fikli\u011finden \u00f6nce zaten aktif olmal\u0131; b\u00f6ylece arama motorlar\u0131 hangi s\u00fcr\u00fcm\u00fcn kanonik oldu\u011funu net \u015fekilde anlar.<\/p>\n<h2><span id=\"Nginx_ile_301_Yonlendirme_Kurallari\">Nginx ile 301 Y\u00f6nlendirme Kurallar\u0131<\/span><\/h2>\n<p>Nginx kullanan <a href=\"https:\/\/www.dchost.com\/tr\/vps\">VPS<\/a> veya <a href=\"https:\/\/www.dchost.com\/tr\/fiziksel-sunucu\">dedicated sunucu<\/a>larda y\u00f6nlendirmeleri .htaccess yerine <strong>server block<\/strong> (site konfig\u00fcrasyon dosyalar\u0131) i\u00e7inde yaz\u0131yoruz. DCHost VPS hizmetlerinde Nginx konfig\u00fcrasyonlar\u0131n\u0131 \u00e7o\u011funlukla <code>\/etc\/nginx\/sites-available<\/code> ve <code>\/etc\/nginx\/sites-enabled<\/code> yap\u0131s\u0131yla y\u00f6netiyoruz.<\/p>\n<h3><span id=\"1_Tek_Bir_URLyi_301_ile_Yonlendirmek\">1. Tek Bir URL\u2019yi 301 ile Y\u00f6nlendirmek<\/span><\/h3>\n<p>Basit bir \u00f6rnek:<\/p>\n<pre class=\"language-nginx line-numbers\"><code class=\"language-nginx\">server {\n    listen 80;\n    server_name siteadiniz.com;\n\n    location = \/eski-sayfa {\n        return 301 \/yeni-sayfa;\n    }\n\n    # Di\u011fer location ve ayarlar\n}<\/code><\/pre>\n<p><code>location = \/eski-sayfa<\/code> ifadesi, tam e\u015fle\u015fme (exact match) yapar. Daha karma\u015f\u0131k desenler i\u00e7in <code>~<\/code> (regex) veya <code>^~<\/code> (prefix) kullanabilirsiniz.<\/p>\n<h3><span id=\"2_Tum_Siteyi_Yeni_Alan_Adina_Tasimak\">2. T\u00fcm Siteyi Yeni Alan Ad\u0131na Ta\u015f\u0131mak<\/span><\/h3>\n<p>Eski domain\u2019deki t\u00fcm istekleri yeni domain\u2019e ta\u015f\u0131mak i\u00e7in:<\/p>\n<pre class=\"language-nginx line-numbers\"><code class=\"language-nginx\">server {\n    listen 80;\n    server_name eskidomain.com www.eskidomain.com;\n\n    return 301 https:\/\/yenidomain.com$request_uri;\n}<\/code><\/pre>\n<p><code>$request_uri<\/code>, path ve query string\u2019i oldu\u011fu gibi korur. B\u00f6ylece:<\/p>\n<ul>\n<li><code>http:\/\/eskidomain.com\/blog\/yazi?ref=facebook<\/code> \u2192 <code>https:\/\/yenidomain.com\/blog\/yazi?ref=facebook<\/code><\/li>\n<\/ul>\n<h3><span id=\"3_Eski_Klasorden_Yeni_Klasore_Gecis\">3. Eski Klas\u00f6rden Yeni Klas\u00f6re Ge\u00e7i\u015f<\/span><\/h3>\n<p>Apache\u2019deki <code>^blog\/(.*)$ \u2192 icerik\/$1<\/code> \u00f6rne\u011finin Nginx kar\u015f\u0131l\u0131\u011f\u0131:<\/p>\n<pre class=\"language-nginx line-numbers\"><code class=\"language-nginx\">server {\n    listen 80;\n    server_name siteadiniz.com;\n\n    location ~ ^\/blog\/(.*)$ {\n        return 301 \/icerik\/$1;\n    }\n\n    # Di\u011fer location'lar\n}<\/code><\/pre>\n<p>Bu kural:<\/p>\n<ul>\n<li><code>\/blog\/seo-url-yapisi<\/code> \u2192 <code>\/icerik\/seo-url-yapisi<\/code><\/li>\n<li><code>\/blog\/kategori\/hosting<\/code> \u2192 <code>\/icerik\/kategori\/hosting<\/code><\/li>\n<\/ul>\n<h3><span id=\"4_Query_Stringe_Gore_Yonlendirme\">4. Query String\u2019e G\u00f6re Y\u00f6nlendirme<\/span><\/h3>\n<p>Nginx\u2019te query string\u2019e g\u00f6re y\u00f6nlendirme yapmak i\u00e7in <code>if<\/code> kullanmak yayg\u0131n bir yakla\u015f\u0131md\u0131r, ancak karma\u015f\u0131k ko\u015fullarda dikkatli kullanmak gerekir. Basit bir \u00f6rnek:<\/p>\n<pre class=\"language-nginx line-numbers\"><code class=\"language-nginx\">server {\n    listen 80;\n    server_name siteadiniz.com;\n\n    location = \/urun.php {\n        if ($arg_id = 123) {\n            return 301 \/urun\/iphone-15-pro\/;\n        }\n        if ($arg_id = 124) {\n            return 301 \/urun\/samsung-galaxy-s24\/;\n        }\n    }\n}<\/code><\/pre>\n<p>Burada <code>$arg_id<\/code>, <code>?id=<\/code> parametresinin de\u011ferini temsil eder. Yine uzun liste gerekiyorsa, <code>map<\/code> direktifi ile ayr\u0131 bir haritalama tablosu da kullanabilirsiniz.<\/p>\n<h3><span id=\"5_www_non-www_ve_HTTP_HTTPS_Zorunlu_Yonlendirme\">5. www \u2194 non-www ve HTTP \u2192 HTTPS Zorunlu Y\u00f6nlendirme<\/span><\/h3>\n<p>Nginx taraf\u0131nda bu y\u00f6nlendirmeleri ayr\u0131 bir server block ile \u00e7\u00f6zmek daha sa\u011fl\u0131kl\u0131d\u0131r:<\/p>\n<pre class=\"language-nginx line-numbers\"><code class=\"language-nginx\"># HTTP'den HTTPS'e ve www'den non-www'ye y\u00f6nlendirme\nserver {\n    listen 80;\n    server_name www.siteadiniz.com siteadiniz.com;\n\n    return 301 https:\/\/siteadiniz.com$request_uri;\n}\n\nserver {\n    listen 443 ssl http2;\n    server_name siteadiniz.com;\n\n    # SSL ayarlar\u0131, root, PHP-FPM vb.\n}<\/code><\/pre>\n<p>HTTP\/2 ve HTTP\/3 deste\u011finin SEO ve Core Web Vitals \u00fczerindeki etkilerini merak ediyorsan\u0131z, <a href=\"https:\/\/www.dchost.com\/blog\/http-2-ve-http-3-destegi-seo-ve-core-web-vitalsi-nasil-etkiler-hosting-secerken-nelere-bakmali\/\">HTTP\/2 ve HTTP\/3 rehberimiz<\/a> y\u00f6nlendirme kurgunuzla birlikte dikkate alman\u0131z gereken performans detaylar\u0131n\u0131 da anlat\u0131yor.<\/p>\n<h2><span id=\"WordPress_Laravel_ve_E-Ticaret_Siteleri_Icin_Ozel_Senaryolar\">WordPress, Laravel ve E-Ticaret Siteleri \u0130\u00e7in \u00d6zel Senaryolar<\/span><\/h2>\n<p>Ger\u00e7ek d\u00fcnyada URL yap\u0131s\u0131 de\u011fi\u015fiklikleri \u00e7o\u011funlukla belirli uygulamalar etraf\u0131nda ger\u00e7ekle\u015fiyor. DCHost \u00fczerinde en s\u0131k kar\u015f\u0131la\u015ft\u0131\u011f\u0131m\u0131z \u00fc\u00e7 senaryoyu k\u0131saca ele alal\u0131m.<\/p>\n<h3><span id=\"1_WordPress_Permalink_Yapisini_Degistirmek\">1. WordPress Permalink Yap\u0131s\u0131n\u0131 De\u011fi\u015ftirmek<\/span><\/h3>\n<p>WordPress\u2019te <strong>Ayarlar \u2192 Kal\u0131c\u0131 Ba\u011flant\u0131lar<\/strong> men\u00fcs\u00fcnden permalink yap\u0131s\u0131n\u0131 de\u011fi\u015ftirmek olduk\u00e7a kolay g\u00f6r\u00fcn\u00fcr; ancak bu i\u015flemi, \u00f6zellikle b\u00fcy\u00fck sitelerde, do\u011frudan canl\u0131da yapmak risklidir. \u00d6nerilen ak\u0131\u015f:<\/p>\n<ol>\n<li>\u00d6nce staging ortam\u0131nda permalink de\u011fi\u015fikli\u011fini test edin.<\/li>\n<li>Yeni yap\u0131da 404 veren sayfa kalmad\u0131\u011f\u0131ndan emin olun.<\/li>\n<li>Gerekirse \u00f6zel <code>redirect<\/code> eklentileriyle baz\u0131 eski URL\u2019leri manuel e\u015fleyin.<\/li>\n<li>Staging\u2019de her \u015fey yolundaysa, canl\u0131ya ayn\u0131 ad\u0131mlar\u0131 uygulay\u0131n.<\/li>\n<li>Sunucu seviyesinde (.htaccess\/Nginx) ek kurallarla eksik y\u00f6nlendirmeleri tamamlay\u0131n.<\/li>\n<\/ol>\n<p>WordPress optimizasyonu ve sunucu taraf\u0131 ayarlar\u0131yla ilgileniyorsan\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\/\">WordPress i\u00e7in sunucu taraf\u0131 optimizasyon rehberimiz<\/a> URL ge\u00e7i\u015finden sonra performans\u0131n da yerinde kalmas\u0131n\u0131 sa\u011flamak i\u00e7in iyi bir referans olacakt\u0131r.<\/p>\n<h3><span id=\"2_Laravel_ve_Ozel_PHP_Uygulamalarinda_Route_Degisiklikleri\">2. Laravel ve \u00d6zel PHP Uygulamalar\u0131nda Route De\u011fi\u015fiklikleri<\/span><\/h3>\n<p>Laravel veya \u00f6zel framework\u2019lerde URL yap\u0131s\u0131 genellikle <code>routes\/web.php<\/code> gibi dosyalarda tan\u0131ml\u0131d\u0131r. Yeni route isimleri, controller action\u2019lar\u0131 veya slug yap\u0131lar\u0131 tan\u0131mlad\u0131\u011f\u0131n\u0131zda:<\/p>\n<ul>\n<li>Uygulama i\u00e7i route isimlerini (route name) g\u00fcncelleyin.<\/li>\n<li>Eski URL\u2019lere sunucu seviyesinde 301 y\u00f6nlendirme ekleyin.<\/li>\n<li>E\u011fer <code>route model binding<\/code> kullan\u0131yorsan\u0131z, eski slug\u2019lardan yeni slug\u2019lara e\u015fle\u015ftirme tablosu tutmay\u0131 d\u00fc\u015f\u00fcn\u00fcn.<\/li>\n<\/ul>\n<p>Laravel da\u011f\u0131t\u0131m\u0131 ve hosting taraf\u0131ndaki ak\u0131\u015f\u0131 hen\u00fcz netle\u015ftirmediyseniz, <a href=\"https:\/\/www.dchost.com\/blog\/laravel-uygulamalarini-vpste-nasil-yayinlarim-nginx-php%e2%80%91fpm-horizon-ve-sifir-kesinti-dagitimin-sicacik-yol-haritasi\/\">Laravel\u2019i VPS\u2019te yay\u0131nlama rehberimiz<\/a> ile ba\u015flay\u0131p, ard\u0131ndan URL ge\u00e7i\u015fini planlamak daha do\u011fru bir s\u0131rad\u0131r.<\/p>\n<h3><span id=\"3_E-Ticaret_Sitelerinde_Kategori_ve_Filtre_Yapisini_Degistirmek\">3. E-Ticaret Sitelerinde Kategori ve Filtre Yap\u0131s\u0131n\u0131 De\u011fi\u015ftirmek<\/span><\/h3>\n<p>E-ticaret sitelerinde en sanc\u0131l\u0131 URL de\u011fi\u015fiklikleri genelde kategori\/alt kategori ve filtre URL\u2019lerinde ortaya \u00e7\u0131kar:<\/p>\n<ul>\n<li><code>\/telefonlar\/iphone\/?renk=siyah<\/code> \u2192 <code>\/telefon\/iphone\/siyah\/<\/code><\/li>\n<li><code>\/kadin-giyim\/?beden=m<\/code> \u2192 <code>\/kadin-giyim\/beden-m\/<\/code><\/li>\n<\/ul>\n<p>Burada iki kritik nokta var:<\/p>\n<ol>\n<li>Ger\u00e7ekten indekslenmesini istedi\u011finiz sayfalar i\u00e7in 301 y\u00f6nlendirme yap\u0131n.<\/li>\n<li>Eski yap\u0131da \u201cgereksiz\u201d indekslenmi\u015f (\u00e7oklu filtre kombinasyonu) sayfalar\u0131, yeni yap\u0131da <strong>noindex<\/strong> veya 410 ile temizlemeyi de\u011ferlendirin.<\/li>\n<\/ol>\n<p>Bu kararlar tamamen SEO stratejinizle ilgilidir; teknik olarak her \u015feyi y\u00f6nlendirebilirsiniz, ama her \u015feyi y\u00f6nlendirmek her zaman do\u011fru de\u011fildir. Trafik analizi ve log incelemesiyle hangi filtre kombinasyonlar\u0131n\u0131n de\u011ferli oldu\u011funu mutlaka ay\u0131r\u0131n.<\/p>\n<h2><span id=\"Degisiklik_Sonrasi_Kontrol_Listesi\">De\u011fi\u015fiklik Sonras\u0131 Kontrol Listesi<\/span><\/h2>\n<p>URL yap\u0131s\u0131n\u0131 de\u011fi\u015ftirdiniz, 301 kurallar\u0131n\u0131 yazd\u0131n\u0131z. \u015eimdi i\u015fin en az teknik k\u0131s\u0131m kadar \u00f6nemli olan <strong>kontrol ve izleme<\/strong> a\u015famas\u0131na geldik.<\/p>\n<h3><span id=\"1_404_ve_5xx_Hatalarini_Izleyin\">1. 404 ve 5xx Hatalar\u0131n\u0131 \u0130zleyin<\/span><\/h3>\n<p>Ge\u00e7i\u015ften sonraki ilk 1\u20132 hafta, Apache\/Nginx loglar\u0131n\u0131 yak\u0131ndan takip edin:<\/p>\n<ul>\n<li>Hangi eski URL\u2019ler 404 veriyor?<\/li>\n<li>Yanl\u0131\u015f yazd\u0131\u011f\u0131n\u0131z regex y\u00fcz\u00fcnden beklenmedik 500 hatalar\u0131 var m\u0131?<\/li>\n<\/ul>\n<p>Bu a\u015famada <a href=\"https:\/\/www.dchost.com\/blog\/hosting-sunucu-loglarini-okumayi-ogrenin-apache-ve-nginx-ile-4xx-5xx-hatalarini-teshis-rehberi\/\">sunucu loglar\u0131n\u0131 okuma rehberimizde<\/a> anlatt\u0131\u011f\u0131m\u0131z pratik komutlar ve filtreleme y\u00f6ntemleri \u00e7ok i\u015finize yarar.<\/p>\n<h3><span id=\"2_Sitemap_ve_robotstxtyi_Guncelleyin\">2. Sitemap ve robots.txt\u2019yi G\u00fcncelleyin<\/span><\/h3>\n<p>Yeni URL yap\u0131n\u0131z\u0131 yans\u0131tan g\u00fcncel bir <strong>sitemap.xml<\/strong> olu\u015fturun ve eski URL\u2019leri bu dosyadan kald\u0131r\u0131n. Ard\u0131ndan:<\/p>\n<ul>\n<li>robots.txt i\u00e7inde sitemap adresinizin g\u00fcncel oldu\u011fundan emin olun.<\/li>\n<li>Yeni sitemap\u2019i Google Search Console\u2019a yeniden g\u00f6nderin.<\/li>\n<\/ul>\n<p>Bu ad\u0131mlar\u0131 atlamamak i\u00e7in, <a href=\"https:\/\/www.dchost.com\/blog\/yeni-web-sitesi-yayina-alirken-hosting-tarafinda-seo-ve-performans-kontrol-listesi\/\">yeni web sitesi yay\u0131na al\u0131n\u0131rken SEO ve performans kontrol listemiz<\/a> ile \u00e7apraz kontrol yapmak iyi bir pratiktir.<\/p>\n<h3><span id=\"3_Ic_Linkleri_ve_Kanonik_Etiketleri_Guncelleyin\">3. \u0130\u00e7 Linkleri ve Kanonik Etiketleri G\u00fcncelleyin<\/span><\/h3>\n<p>Site i\u00e7i linkleriniz hala eski URL\u2019lere i\u015faret ediyorsa, her t\u0131klamada gizli bir 301 zinciri \u00e7al\u0131\u015ft\u0131r\u0131yorsunuz demektir. Bu da hem performans\u0131 hem de arama motoru tarama b\u00fct\u00e7esini olumsuz etkiler.<\/p>\n<ul>\n<li>WordPress kullan\u0131yorsan\u0131z, veritaban\u0131nda toplu arama\/de\u011fi\u015ftir ile eski URL\u2019leri yeni URL\u2019lerle de\u011fi\u015ftirin.<\/li>\n<li>Laravel ve \u00f6zel uygulamalarda, blade\/template dosyalar\u0131ndaki sabit URL\u2019leri g\u00fcncelleyin.<\/li>\n<li><code>&lt;link rel=\"canonical\"&gt;<\/code> etiketlerinin yeni URL\u2019leri g\u00f6sterdi\u011finden emin olun.<\/li>\n<\/ul>\n<h3><span id=\"4_Google_Search_Console_ve_Analitik_Araclari_Takibi\">4. Google Search Console ve Analitik Ara\u00e7lar\u0131 Takibi<\/span><\/h3>\n<p>Ge\u00e7i\u015ften sonraki ilk hafta i\u00e7inde:<\/p>\n<ul>\n<li>Tarama hatalar\u0131 (Coverage\/Indexing) raporlar\u0131n\u0131 takip edin.<\/li>\n<li>Soft 404 uyar\u0131lar\u0131n\u0131 ciddiye al\u0131n; genelde ana sayfaya yap\u0131lan toplu y\u00f6nlendirmeler sebep olur.<\/li>\n<li>En \u00e7ok trafik alan sayfalar\u0131n\u0131zda konum ve t\u0131klama de\u011fi\u015fimlerini izleyin.<\/li>\n<\/ul>\n<p>URL yap\u0131s\u0131 de\u011fi\u015fikli\u011fi, k\u0131sa vadede k\u00fc\u00e7\u00fck dalgalanmalara neden olabilir; \u00f6nemli olan, 4\u20138 hafta i\u00e7inde trendin tekrar yukar\u0131 d\u00f6nmeye ba\u015flamas\u0131d\u0131r.<\/p>\n<h2><span id=\"DCHost_Uzerinde_Bu_Sureci_Nasil_Yonetiyoruz\">DCHost \u00dczerinde Bu S\u00fcreci Nas\u0131l Y\u00f6netiyoruz?<\/span><\/h2>\n<p>DCHost\u2019ta m\u00fc\u015fterilerimizle \u00e7al\u0131\u015f\u0131rken URL yap\u0131s\u0131 de\u011fi\u015fikli\u011fini hi\u00e7bir zaman sadece \u201c.htaccess dosyas\u0131na birka\u00e7 kural ekleyelim\u201d seviyesinde g\u00f6rm\u00fcyoruz. Bu s\u00fcreci genellikle \u015fu ad\u0131mlarla y\u00f6netiyoruz:<\/p>\n<ul>\n<li>Mevcut URL envanterinin ve trafik verilerinin \u00e7\u0131kar\u0131lmas\u0131<\/li>\n<li>Yeni URL mimarisinin SEO ve performans a\u00e7\u0131s\u0131ndan de\u011ferlendirilmesi<\/li>\n<li>Staging ortam\u0131nda uygulama ve y\u00f6nlendirme kurallar\u0131n\u0131n test edilmesi<\/li>\n<li>Canl\u0131ya ge\u00e7i\u015fte DNS\/TTL, \u00f6nbellek ve CDN davran\u0131\u015flar\u0131n\u0131n birlikte ele al\u0131nmas\u0131<\/li>\n<li>\u0130lk 2\u20134 hafta log analizi, 404 takibi ve gerekti\u011finde ek 301 kurallar\u0131yla iyile\u015ftirme<\/li>\n<\/ul>\n<p>Altyap\u0131 taraf\u0131nda payla\u015f\u0131ml\u0131 hosting, VPS, dedicated veya colocation kullan\u0131yor olman\u0131z fark etmiyor; \u00f6nemli olan, ge\u00e7i\u015fi kontroll\u00fc ve \u00f6l\u00e7\u00fclebilir bir \u015fekilde y\u00f6netmek. E\u011fer siz de sitenizin URL yap\u0131s\u0131n\u0131 yenilemeyi d\u00fc\u015f\u00fcn\u00fcyor, ancak SEO kayb\u0131 ya\u015fama riskinden \u00e7ekiniyorsan\u0131z, DCHost ekibi olarak hem <strong>teknik altyap\u0131<\/strong> hem de <strong>ge\u00e7i\u015f plan\u0131<\/strong> konusunda yan\u0131n\u0131zday\u0131z.<\/p>\n<p>Yeni bir hosting mimarisi tasarlarken veya mevcut sitenizi DCHost altyap\u0131s\u0131na ta\u015f\u0131rken, URL yap\u0131s\u0131, SEO, performans ve g\u00fcvenlik konular\u0131n\u0131 birlikte ele al\u0131yoruz. B\u00f6ylece tek seferde, tekrar tekrar bozmadan uzun s\u00fcre kullanabilece\u011finiz bir yap\u0131 kurmak m\u00fcmk\u00fcn oluyor.<\/p>\n<h2><span id=\"Ozet_ve_Son_Tavsiyeler\">\u00d6zet ve Son Tavsiyeler<\/span><\/h2>\n<p>URL yap\u0131s\u0131n\u0131 de\u011fi\u015ftirmek, do\u011fru yap\u0131ld\u0131\u011f\u0131nda uzun vadede daha temiz, anla\u015f\u0131l\u0131r ve SEO dostu bir site mimarisi sa\u011flar. Ancak plans\u0131z ve testsiz ger\u00e7ekle\u015ftirildi\u011finde, organik trafi\u011finizde ciddi dalgalanmalara yol a\u00e7abilir. Bu yaz\u0131da:<\/p>\n<ul>\n<li>URL de\u011fi\u015fikli\u011finin SEO \u00fczerindeki etkilerini<\/li>\n<li>Eski \u2192 yeni URL haritas\u0131 \u00e7\u0131karmay\u0131<\/li>\n<li>.htaccess ve Nginx \u00fczerinde pratik 301 y\u00f6nlendirme \u00f6rneklerini<\/li>\n<li>WordPress, Laravel ve e-ticaret gibi yayg\u0131n senaryolar\u0131<\/li>\n<li>Ge\u00e7i\u015f sonras\u0131 kontrol ve izleme ad\u0131mlar\u0131n\u0131<\/li>\n<li>Ve DCHost taraf\u0131nda bu s\u00fcreci nas\u0131l y\u00f6netti\u011fimizi<\/li>\n<\/ul>\n<p>detayl\u0131 bi\u00e7imde ele ald\u0131k.<\/p>\n<p>Son tavsiyeler:<\/p>\n<ul>\n<li>\u00d6nce plan, sonra konfig\u00fcrasyon: URL haritas\u0131 \u00e7\u0131karmadan .htaccess\/Nginx\u2019e dokunmay\u0131n.<\/li>\n<li>Mutlaka staging\/test ortam\u0131nda deneyin, canl\u0131ya \u00f6yle al\u0131n.<\/li>\n<li>B\u00fcy\u00fck projelerde log analizi ve Search Console verilerini ge\u00e7i\u015ften sonra en az 1\u20132 ay yak\u0131ndan takip edin.<\/li>\n<li>Her \u015feyi ana sayfaya y\u00f6nlendirmek yerine, m\u00fcmk\u00fcn oldu\u011funca spesifik 1:1 y\u00f6nlendirmeler kurgulay\u0131n.<\/li>\n<\/ul>\n<p>E\u011fer URL yap\u0131n\u0131z\u0131 de\u011fi\u015ftirmek, alan ad\u0131n\u0131z\u0131 yenilemek veya sitenizi DCHost altyap\u0131s\u0131na ta\u015f\u0131mak istiyorsan\u0131z ve nereden ba\u015flayaca\u011f\u0131n\u0131z\u0131 netle\u015ftirmek istiyorsan\u0131z, ekibimizle birlikte somut bir ge\u00e7i\u015f plan\u0131 \u00e7\u0131karabiliriz. Mevcut loglar\u0131n\u0131z, trafik verileriniz ve hedef yap\u0131n\u0131z \u00fczerinden birlikte ilerleyip, <strong>SEO kayb\u0131 ya\u015famadan<\/strong> daha temiz bir URL mimarisine ge\u00e7menize yard\u0131mc\u0131 oluruz.<\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>\u0130&ccedil;indekiler1 Neden URL Yap\u0131s\u0131 De\u011fi\u015ftirmek Riskli Ama Bazen Gerekli?2 SEO Perspektifinden URL De\u011fi\u015fikli\u011finin Etkileri2.1 URL De\u011fi\u015fikli\u011finde S\u0131k G\u00f6r\u00fclen SEO Problemleri3 Planlama: URL Haritas\u0131 \u00c7\u0131karmak ve Strateji Belirlemek3.1 1. Mevcut T\u00fcm URL\u2019leri Listeleyin3.2 2. Yeni URL Tasar\u0131m\u0131n\u0131 Netle\u015ftirin3.3 3. Eski \u2192 Yeni URL E\u015fle\u015ftirme Tablosu Olu\u015fturun3.4 4. \u00d6nce Staging Ortam\u0131nda Test Edin4 Apache \u00dczerinde .htaccess ile [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":3906,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[26],"tags":[],"class_list":["post-3905","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\/3905","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=3905"}],"version-history":[{"count":0,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/posts\/3905\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/media\/3906"}],"wp:attachment":[{"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/media?parent=3905"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/categories?post=3905"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/tags?post=3905"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}