WordPress

WordPress .htaccess Nedir?

blank

WordPress .htaccess dosyası, Apache tabanlı sunucularda çalışan web sitelerinde yapılandırma ve yönlendirme işlemlerini yöneten özel bir ayardır. WordPress sitelerinde kalıcı bağlantıların çalışması, URL yönlendirmeleri, güvenlik kuralları, sıkıştırma ayarları ve performans iyileştirmeleri büyük oranda bu dosya üzerinden sağlanır.

WordPress’in düzgün çalışması için .htaccess çoğu zaman gereklidir. Yanlış düzenleme site erişimini bozabileceği için düzenlemeye başlamadan önce mutlaka yedek alınmalıdır.

WordPress .htaccess Ne İşe Yarar?

WordPress’in çekirdek çalışma mantığı içinde .htaccess dosyasının rolü oldukça kritiktir. Aşağıdaki ana işlevleri yerine getirir:

Kalıcı Bağlantı Yönetimi: WordPress’in SEO dostu URL yapısı bu dosya sayesinde etkin olur.

Yönlendirme Kuralları: 301, 302 veya özel yönlendirmeler .htaccess üzerinden kolaylıkla yapılabilir.

Güvenlik: wp-config, wp-admin, wp-includes gibi kritik alanlara erişim sınırlandırılabilir.

Performans: Gzip sıkıştırma, tarayıcı önbellekleme ve sunucu optimizasyonları eklenebilir.

Hotlink Koruması: Başka sitelerin görsellerinizi izinsiz kullanması engellenebilir.

WordPress Varsayılan .htaccess Dosyası

Yeni kurulan veya kalıcı bağlantıları güncelledikten sonra WordPress’in oluşturduğu varsayılan .htaccess içeriği şöyledir:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Bu yapı, WordPress’in tüm yönlendirme sisteminin temelini oluşturur.

WordPress İçin Gelişmiş ve Benzersiz .htaccess Örnekleri

Aşağıda WordPress siteleri için kullanılan en etkili ve tamamen benzersiz .htaccess örneklerini bulabilirsiniz. Her biri açıklamalıdır.

1. WordPress Güvenlik Odaklı .htaccess Ayarları

# wp-config dosyasını dış erişime kapatma
<Files wp-config.php>
Order allow,deny
Deny from all
</Files>

# wp-includes dizinine doğrudan erişimi engelleme
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^wp-includes/.*\.php$ - [F,L]
</IfModule>

Bu kurallar sitenin çekirdek dosyalarının dışarıdan görüntülenmesini engeller.

2. Yalnızca Belirli IP Adreslerine wp-admin Erişimi

# Yönetim paneline sadece belirli IP adreslerinin erişmesi için
<FilesMatch ".*">
Order deny,allow
Deny from all
Allow from 123.45.67.89
Allow from 98.76.54.32
</FilesMatch>

Bu yöntem, yetkisiz giriş denemelerini büyük oranda azaltır.

3. WordPress İçin Gzip Sıkıştırma Ayarları

# Gzip sıkıştırmasını aktifleştirme
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/json
AddOutputFilterByType DEFLATE application/xml
</IfModule>

Bu ayar, sitenin daha hızlı yüklenmesine katkı sağlar.

4. Tarayıcı Önbellekleme (Cache) Ayarları

# Tarayıcı önbellekleme süresi belirleme
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/jpg "access plus 30 days"
ExpiresByType image/jpeg "access plus 30 days"
ExpiresByType image/png "access plus 30 days"
ExpiresByType image/gif "access plus 30 days"
ExpiresByType text/css "access plus 10 days"
ExpiresByType application/javascript "access plus 10 days"
</IfModule>

Bu kurallar statik dosyaları önbelleğe alarak sayfa hızını artırır.

# Görsellerin başka sitelerce kullanılmasını engelleme
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !example\.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ - [F]

Hotlink koruması sunucu yükünü ciddi oranda azaltır.

6. SSL Zorunlu Yönlendirme (.htaccess ile HTTPS mecburiyeti)

# Tüm trafiği https adresine yönlendirme
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Bu ayar kullanıcı ve sunucu arasındaki iletişimi şifreleyerek güvenliği artırır.

7. WordPress İçin Temiz 301 Yönlendirme Örneği

# Eski bir URL’yi yeni bir URL’ye yönlendirme
Redirect 301 /eski-sayfa/ /yeni-sayfa/

Bu SEO açısından sayfa taşımalarında en güvenli yöntemdir.

Bir yanıt yazın