.htaccess Nedir? En Faydalı .htaccess Kodları ve Kullanım Rehberi
Meta Açıklaması: .htaccess dosyası nedir, ne işe yarar ve nasıl kullanılır? 301 yönlendirme, HTTPS zorunluluğu, www yönlendirmesi, IP engelleme, hotlink koruması ve daha birçok faydalı .htaccess kodunu örneklerle öğrenin.
.htaccess Nedir?
.htaccess (Hypertext Access), Apache web sunucularında kullanılan özel bir yapılandırma dosyasıdır. Bu dosya sayesinde web sitenizin davranışını sunucu seviyesinde değiştirebilir, yönlendirmeler yapabilir, güvenlik önlemleri alabilir ve SEO açısından önemli ayarlar gerçekleştirebilirsiniz.
Özellikle Linux tabanlı hosting kullanan web sitelerinde en sık kullanılan dosyalardan biridir.
.htaccess Dosyası Nerede Bulunur?
Genellikle web sitenizin ana dizininde yer alır.
Örnek:
public_html/.htaccess
veya
htdocs/.htaccess
Dosya gizli olduğundan FTP programlarında Gizli Dosyaları Göster (Show Hidden Files) seçeneğini aktif etmeniz gerekebilir.
.htaccess Dosyası Nasıl Oluşturulur?
Not Defteri açın.
Yeni dosya oluşturun.
Dosya adını;
.htaccess
olarak kaydedin.
Daha sonra hosting hesabınızın ana dizinine yükleyin.
HTTPS’ye Otomatik Yönlendirme
SSL sertifikası kullanan tüm web sitelerinde önerilir.
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Bu kod sayesinde tüm HTTP bağlantıları otomatik olarak HTTPS sürümüne yönlendirilir.
WWW’den WWW’siz Adrese Yönlendirme
Örneğin;
www.siteadi.com
adresini;
siteadi.com
adresine yönlendirmek için:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
WWW’siz Adresi WWW’ye Yönlendirme
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]
301 Kalıcı Yönlendirme
Bir sayfanın adresi değiştiyse aşağıdaki kod kullanılabilir.
Redirect 301 /eski-sayfa.html https://siteadi.com/yeni-sayfa.html
Google eski URL’nin değerini büyük ölçüde yeni URL’ye aktarabilir.
302 Geçici Yönlendirme
Redirect 302 /kampanya.html https://siteadi.com/yeni-kampanya.html
Geçici kampanyalar için uygundur.
Belirli IP Adresini Engelleme
<RequireAll>
Require all granted
Require not ip 192.168.1.20
</RequireAll>
Birden fazla IP de ekleyebilirsiniz.
Belirli Ülkelere Erişimi Engelleme
Bu işlem doğrudan .htaccess ile değil, sunucuda ilgili modüller veya güvenlik servisleri kullanılarak yapılır. Birçok hosting firması bu özellik için ek modüller veya güvenlik araçları sunmaktadır.
Hotlink Koruması
Başka sitelerin görsellerinizi kullanmasını engelleyebilirsiniz.
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^
RewriteCond %{HTTP_REFERER} !^https://(www\.)?siteadi.com [NC]
RewriteRule \.(jpg|jpeg|png|gif|webp)$ - [F]
Dizin Listelemeyi Kapatma
Sunucuda klasör içeriklerinin görüntülenmesini engeller.
Options -Indexes
PHP Dosyalarını Gizleme
RewriteEngine On
RewriteCond %{THE_REQUEST} \s/+(.+)\.php [NC]
RewriteRule ^ /%1 [R=301,L]
Artık;
siteadi.com/hakkimizda
şeklinde açılabilir.
Hata Sayfaları Tanımlama
404 Sayfası
ErrorDocument 404 /404.html
500 Sayfası
ErrorDocument 500 /500.html
403 Sayfası
ErrorDocument 403 /403.html
Gzip Sıkıştırma
Sayfaların daha hızlı yüklenmesini sağlayabilir.
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/javascript
</IfModule>
Tarayıcı Önbellekleme
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType text/css "access plus 1 month"
ExpiresByType application/javascript "access plus 1 month"
</IfModule>
Bu ayarlar tekrar ziyaretlerde sayfanın daha hızlı yüklenmesine yardımcı olabilir.
XML Sitemap Yönlendirmesi
RewriteRule ^sitemap.xml$ sitemap_index.xml [L]
Dosya Türlerini Engelleme
<FilesMatch "\.(ini|log|bak|config)$">
Require all denied
</FilesMatch>
Robots.txt Dosyasını Koruma
<Files robots.txt>
Require all granted
</Files>
Güvenlik Başlıkları
<IfModule mod_headers.c>
Header always set X-Frame-Options SAMEORIGIN
Header always set X-Content-Type-Options nosniff
Header always set Referrer-Policy strict-origin-when-cross-origin
</IfModule>
Bu başlıklar belirli web güvenliği risklerine karşı ek koruma sağlayabilir.
.htaccess Kullanırken Dikkat Edilmesi Gerekenler
- Değişiklik yapmadan önce mutlaka yedek alın.
- Küçük bir yazım hatası sitenin geçici olarak erişilemez hale gelmesine neden olabilir.
- Her değişiklikten sonra siteyi test edin.
- Kullandığınız Apache sürümü ve etkin modüllerin kuralları desteklediğinden emin olun.
- Nginx sunucularında
.htaccesskullanılmaz; benzer ayarlar sunucu yapılandırmasında yapılır.
SEO Açısından .htaccess’in Önemi
Doğru yapılandırılmış bir .htaccess dosyası;
- Tek bir URL sürümünün kullanılmasına yardımcı olur.
- HTTPS kullanımını zorunlu hale getirebilir.
- Gereksiz yönlendirme zincirlerini azaltabilir.
- Özel hata sayfalarıyla kullanıcı deneyimini iyileştirebilir.
- Gzip ve önbellekleme ile sayfa performansını artırmaya katkı sağlayabilir.
Bu ayarlar dolaylı olarak teknik SEO çalışmalarını destekler.
Sık Sorulan Sorular
.htaccess her hostingde çalışır mı?
Hayır. Genellikle Apache web sunucusunda çalışır. Nginx kullanan sunucularda farklı yapılandırma yöntemleri uygulanır.
.htaccess silinirse ne olur?
Yönlendirmeler, güvenlik kuralları ve diğer yapılandırmalar devre dışı kalabilir. Bazı web siteleri düzgün çalışmayabilir.
Yanlış kod eklersem ne olur?
Sunucu yapılandırmasına bağlı olarak 500 Internal Server Error gibi hatalar alabilirsiniz. Bu nedenle değişikliklerden önce yedek almak önemlidir.
.htaccess SEO’yu etkiler mi?
Evet. Özellikle 301 yönlendirmeleri, HTTPS kullanımı, önbellekleme ve doğru URL yönetimi teknik SEO açısından önemli katkılar sağlayabilir.
Sonuç
.htaccess, Apache tabanlı web siteleri için en güçlü yapılandırma dosyalarından biridir. Doğru kullanıldığında güvenlik, performans ve SEO açısından önemli avantajlar sunar. Ancak yapılan her değişikliğin dikkatle test edilmesi ve canlı ortama alınmadan önce yedeklenmesi önerilir.

Ajans Çorlu, dijital dünyanın sunduğu tüm olanakları yaratıcı ve kullanıcı odaklı çözümlerle birleştirerek hizmet veren öncü bir dijital ajanstır. Web tasarım, SEO, içerik üretimi ve özel yazılım geliştirme alanlarında uzman ekibimiz, müşterilerimizin dijital hedeflerini gerçeğe dönüştürmek için çalışır.

