.htaccess: SEO İçin Eksiksiz Rehber

SEO'da, ne istediğimizi geliştiriciye iletebilmek ve uygulamanın proje için başarılı olmasını sağlamak için belirli direktifleri nasıl yöneteceğimizi öğrenmeliyiz.
Bununla birlikte, birçok web sitesi en yaygın direktifleri .htaccess dosyası aracılığıyla yönetir. Bu dosya hakkında biraz daha ayrıntılı bilgi edinmek ve arama motorları için optimize etmenin en iyi püf noktalarını öğrenmek için lütfen okumaya devam edin.
.htaccess dosyası nedir?
.htaccess dosyası Hypertext Access'in kısaltmasıdır. Adını Apache sunucularındaki dizin yapılandırma dosyasından alan ve sunucunun ana direktiflerini toplamak için kullanılan bir hipermetin erişim dosyasıdır.
Adın "." ile başlamasının nedeni, bu tür dosyaların gizli olarak tanımlandığı Unix sistemleridir. Bu nedenle, sorunlardan kaçınmak için Windows'ta yeniden adlandırırken dikkat etmeliyiz.
Dosya yerel olarak oluşturulur, metin formatında (.txt) kaydedilir — asla Word formatında değil — ve FTP aracılığıyla sunucuya yüklenir, kullanılması gereken klasöre yerleştirilir.
Nasıl çalışır?
Bu dosyanın davranışlarını ve tüm özelliklerini dikkate almalısınız:
- Bu dosyanın davranışı, web sitesinin dizin ağacı boyunca hiyerarşiktir, bu da kök dizinde bir dosyanız varsa, direktiflerin tüm klasörleri etkileyeceği anlamına gelir. Bu nedenle tek bir htaccess dosyası yoktur; gerekirse her dizine bir tane olabilir.
- Bir kullanıcı bir web sayfasına her eriştiğinde, sunucu bu belgeleri ve içerdikleri direktifleri tarar. Bu nedenle, olaylardan kaçınmak için mükemmel şekilde yapılandırılmış olmaları ve hata içermemeleri esastır.
- Herhangi bir değişiklik yapmadan önce, bunu .htaccess belgesinin bir kopyasında yaptığınızdan emin olun, çünkü kötü düzenlerseniz daha sonra sorunlarınız olabilir.
- Dosyadaki yorumlar her zaman bir diyez "#" ile tanıtılır.
htaccess dosyası SEO için nasıl optimize edilir?
Belirli direktifler aracılığıyla sunucudan ne yapmasını istediğimizi belirtebilir ve böylece çeşitli alanları optimize edebiliriz. Htaccess'ten şunları yapabiliriz:
Bir alt etki alanını bir alt klasöre yönlendirme
Bu, bir alt etki alanını kaldırmamız ve bir etki alanı klasörünün parçası yapmamız gerektiğinde çok kullanışlı olacaktır. Örneğin: hola.example.com'u www.example.com/hola'ya yönlendirme
301 ve 302 yönlendirmeleri
Dosyada eski URL'ler, yönlendirmenin gitmesi gereken URL'lerle birlikte dahil edilir.
Dosya yönlendirmesi
Redirect /eski-sayfa.html https://www.yeni-sayfa.html
Şifre koruması
Bir web sitesinin belirli alanları şifre ile korunabilir:
.htaccess aracılığıyla basit şifre koruması
AuthType Basic AuthName "Korumalı alan" AuthUserFile /<şifre dosyasının mutlak yolu>/.htpasswd AuthPGAuthoritative Off require user Kullanici1 Kullanici2 Kullanici3
Klasör erişim kontrolü
Direktifler aracılığıyla, tüm kullanıcılar için veya belirli bir IP aracılığıyla belirli klasörlere erişimi (reddetme veya izin verme) yönetebilirsiniz:
IP erişim düzenlemesi için dosya
Order deny,allow Deny from .aol.com Deny from 192.168 Allow from 192.168.220.102
Ana etki alanını belirtin
domain.com veya www.domain.com'a 301 yönlendirme kuralı kullanma
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.
RewriteCond %{HTTPS}s ^on(s)|off
RewriteCond http%1://%{HTTP_HOST} ^(https?://)(www.)?(.+)$
RewriteRule ^ %1%3%{REQUEST_URI} [R=301,L]
Güvenli sürüme yönlendirmeler
Web sitesinin güvenli protokole yönlendirmeleri:
httpsRewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Varsayılan sayfayı değiştirin
Bazı web sitelerinde, varsayılan sayfa /index olarak adlandırılır, bu SEO dostu değildir. Görüntülenmeyecek şekilde değiştirilebilir.
DirectoryIndex ornek-sayfa.php
PHP bellek sınırını artırın
PHP uygulamalarının kullanımı belirli bir sınıra sahiptir çünkü betikler sunucuda bellek kaplar. Aşağıdaki komutu kullanarak kapasiteyi artırabilirsiniz:
PHP Bellek Sınırı
php_value memory_limit 128M
Sunucunun saat dilimini değiştirin
Aşağıdaki komutla doğru saat dilimini ayarlayabilirsiniz:
#Varsayılan saat dilimini ayarlayın SetEnv TZ America / Washington
Belge kodlaması
Her belge türü için kodlama türünü belirtebilirsiniz. UTF-8 kodlaması için bu komutu girmeniz gerekir:
Karakter kodlamasını belirtin
AddDefaultCharset utf-8
Web sitenizin önbelleğe alınmasını zorlayın
Önbelleğe alma sıklığındaki saniye sayısını değiştirerek, kullanıcı bizi ziyaret ettiğinde, değiştirilmemiş öğelerin çoğu zaten önbelleğe alındığından sayfanın daha hızlı yüklenmesini kolaylaştırırız. Bu esas olarak görsel yüklemeyi iyileştirmemize yardımcı olur.
<IfModule mod_expires.c> ExpiresActive On ExpiresByType image/gif A432000 ExpiresByType image/jpg A432000 ExpiresByType image/jpeg A432000 ExpiresByType image/png A432000 ExpiresByType image/ico A432000 ExpiresByType image/bmp A432000 ExpiresByType text/css A432000 ExpiresByType text/javascript A432000 ExpiresByType application/javascript A432000 ExpiresByType application/x-javascript A432000 </ifmodule>
404 hata sayfalarını özelleştirin
Kullanıcı bulunamayan bir sayfaya ulaştığı için bu hata oluştuğunda, htaccess dosyası bu optimize edilmiş 404 hata sayfalarını görüntüleyebilir. Çoğu zaman en çok gözden kaçırılan sayfalardan biridir ve kullanıcıyı tutmak veya gitmesine izin vermek arasındaki farkı yaratabilir.
Yerel konumda özel hata mesajı
ErrorDocument 404 /erisim-yolu/404.html Güvenlik
Bu dosya aracılığıyla bazı spam botlara erişimi engelleyebilirsiniz:
RewriteEngine on
RewriteCond %{HTTP_REFERER} buttons-for-website.com [NC,OR]
RewriteCond %{HTTP_REFERER} darodar.com [NC,OR]
Hotlinking
Hotlinking gibi etik olmayan teknikleri de engelleyebilirsiniz: Bu teknik, sunucunuzda barındırılan ancak farklı bir web sitesindeki içeriği görüntülemekten ibarettir, böylece ziyaretçi başka bir sitede olsa bile, bu içeriği görüntüleme yükünü, genellikle videolar veya fotoğraflar, sunucunuz taşır.
Hotlinking'i önle
RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http://sizin-domain/.*$ [NC] [OR] RewriteCond %{HTTP_REFERER} !^http://www.sizin-domain/.*$ [NC] [OR] RewriteRule .*.(gif|GIF|jpg|JPG|bmp|BMP|wav|mp3|wmv|avi|mpeg)$ - [F]
Dostça URL'ler oluşturun
URL'lerden varsayılan parametreleri kaldırmak ve daha dostça görünmeleri ve arama sonuçlarında daha iyi sıralanmaya yardımcı olmaları için kılık değiştirmek mümkündür. Örneğin: https://www.example.com/index.php?parameter=blog https://www.example.com/blog olarak daha iyi görünür
RewriteEngine On
RewriteRule ^magaza/([^/])/([^/])/$ /index.php?kategori=$1&urun=$2 [L]
Gezinmeyi iyileştirmek için dosyaları sıkıştırın
Htaccess'teki bir kural aracılığıyla, web sitenizin js, css, html ve metin dosyalarını yükleme sırasında daha az yer kaplayacak şekilde sıkıştırabilirsiniz. Bu, mobil kullanıcıların gezinirken daha az veri tüketmesini kolaylaştıracaktır. SEO için WPO'nun önemini hatırlayalım!
<ifmodule> AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/x-javascript </ifmodule>
Gzip sıkıştırması
Daha hızlı bir indirme elde etmek ve gezinme kalitesini artırmak için sunucudaki dosyalarınızı sıkıştırın.
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascript BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4.0[678] no-gzip BrowserMatch bMSIE !no-gzip !gzip-only-text/html
Dosya dizine eklemeyi önleyin
Belirli URL'leri veya klasörleri robots.txt dosyasından engellemiş olmamıza rağmen Google'ın bunları hala dizine eklediğini görebiliriz. Aşağıdaki komutu girerek tam bir engelleme elde edeceğiz:
<Files ~ «.pdf$»>
Header set X-Robots-Tag «noindex, follow»
</Files>
Keep-Alive'ı etkinleştirin
Bunu etkinleştirmek, sayfa her yüklendiğinde bir bağlantı başlatmak yerine sunucuya sürekli bir bağlantı sağlar. Keep-alive ile web sitesinin hızlı indirilmesini sağlarız.
<ifModule mod_headers.c> Header set Connection keep-alive </ifModule> Artık htaccess dosyasıyla sahip olduğunuz tüm olanakları gördüğünüze göre, bunları uygulamakta özgürsünüz. Bu kurallar, ister CMS olarak WordPress'iniz olsun, ister kendi kodunuz olsun, ister başka bir sistem olsun geçerlidir.
WordPress projeniz varsa hayatınızın daha basit olacağı doğrudur, çünkü htaccess dosyasını doğrudan editörde düzenleyebilirsiniz. Yine de çok dikkatli olun çünkü bu sadece başka bir eklenti değildir ve siteyi bozmak çok kolaydır! Size nasıl yapacağınızı söyleyeceğiz!
WordPress'te htaccess dosyasını düzenleme
WordPress kullanıyorsanız, kolay ve hızlı bir şekilde düzenlemenize olanak tanıyacak Rank Math eklentisini yüklemenizi öneririz.
Sadece Rank Math > Genel Ayarlar > .htaccess'i Düzenle'ye gitmeniz gerekir

WordPress'ten htaccess dosyasını düzenlemek çok basittir, bu nedenle dikkatli olmayı unutmayın!
Hala sorularınız mı var? Bize bir yorum bırakın ve bir göz atmaktan mutluluk duyarız!
Başvurulan kaynaklar:
- CDmon: .htaccess dosyasının bilgileri ve kullanımları - Computerhoy: .htaccess nedir, ne işe yarar ve temel kodlar - Ionos: Herkesin bilmesi gereken .htaccess'i yapılandırmak için on püf noktası - HelpOne: .htaccess nedir? - Hostinger: .htaccess dosyası nedir?
Yazar: David Kaufmann

Son 10 yılı aşkın süredir tamamen SEO'ya kafayı takmış durumdayım — ve açıkçası, başka türlü olmasını da istemezdim.
Kariyerim, internetin tamamında en çok ziyaret edilen ilk 100 site arasında yer alan Chess.com'da Senior SEO Specialist olarak çalıştığım dönemde yeni bir seviyeye ulaştı. Milyonlarca sayfa, onlarca dil ve var olan en rekabetçi SERPs içinde, o ölçekte çalışmak, bana hiçbir kursun ya da sertifikanın öğretemeyeceği şeyler öğretti. Bu deneyim, gerçekten iyi bir SEO'nun nasıl göründüğüne dair bakış açımı kökten değiştirdi — ve o günden sonra kurduğum her şeyin temeli oldu.
Bu deneyimden yola çıkarak SEO Alive'ı kurdum — organik büyüme konusunda ciddi olan markalar için bir ajans. Biz dashboards ve aylık raporlar satmak için burada değiliz. Gerçekten fark yaratan stratejiler kurmak için buradayız; klasik SEO'nun en iyi yanlarını Generative Engine Optimization (GEO) denen heyecan verici yeni dünyayla birleştirerek — markanızın yalnızca Google'ın mavi linklerinde değil, aynı zamanda ChatGPT, Perplexity ve Google AI Overviews'un her gün milyonlarca insana sunduğu AI tarafından üretilen cevapların içinde de görünmesini sağlayarak.
Ve bu iki dünyayı düzgün şekilde ele alan bir araç bulamadığım için, kendim bir tane geliştirdim — SEOcrawl, rankings, teknik denetimler, backlinks izleme, crawl sağlığı ve AI marka görünürlüğü takibini tek bir yerde bir araya getiren kurumsal bir SEO intelligence platformu. Hep var olmasını dilediğim platform.
Bu yazarın diğer içeriklerini keşfedin

