.htaccess Oluşturucu
Seçtiğiniz özelliklere göre Apache ve LiteSpeed sunucularda çalışan .htaccess kurallarını oluşturun: HTTPS ve www yönlendirmesi, sayfa bazlı 301 yönlendirmeleri, özel hata sayfaları, tarayıcı önbelleği, sıkıştırma ve güvenlik başlıkları.
.htaccess nedir?
.htaccess, Apache ve LiteSpeed web sunucularında dizin bazında yapılandırma yapmanızı sağlayan bir dosyadır. Yönlendirme, erişim kısıtlama, önbellek ve güvenlik başlıkları gibi ayarlar sunucunun ana yapılandırmasına erişmeden bu dosyayla eklenebilir. Nginx .htaccess dosyasını okumaz; Nginx’te aynı kurallar sunucu yapılandırmasında yazılır.
En sık kullanılan kurallar
Çoğu site için başlangıç noktası:
HTTPS’e yönlendirme
Tüm HTTP isteklerini HTTPS’e kalıcı (301) olarak yönlendirir; SSL sertifikanız kuruluysa ilk eklemeniz gereken kuraldır.
www tercihi
Sitenizin tek bir adresle (www’li veya www’suz) erişilmesini sağlar; kopya içerik sinyallerini önler.
301 yönlendirmeleri
Taşınan veya adı değişen sayfaların eski adreslerini yenilerine bağlar.
Önbellek ve sıkıştırma
Statik dosyaların tarayıcıda önbelleklenmesini ve sıkıştırılmasını sağlayarak siteyi hızlandırır.
Oluşturulan kuralların sırası
Araç kuralları her zaman aynı sırayla yazar. Dosyanıza eklerken bu sırayı koruyun:
- HTTPS’e zorlama ve www tercihi
- Sayfa bazlı 301 yönlendirmeleri (Redirect 301 satırları)
- URL rewrite (okunur adres) kuralı
- Özel hata sayfaları (ErrorDocument)
- Dizin listelemeyi kapatma, sıkıştırma, tarayıcı önbelleği ve güvenlik başlıkları
- Hotlink koruması ve IP engelleme
HTTPS’e zorlama ile www tercihini birlikte seçtiğinizde araç ikisini tek kuralda birleştirir: http://ornek.com/ adresi tek bir 301 yönlendirmesiyle doğrudan tercih ettiğiniz https adresine gider, arada ara adım oluşmaz. Hata sayfası alanlarına yalnız sitenizdeki yolu yazın (ör. /404.html). Tam adres (https://…) yazarsanız araç o satırı üretmez ve uyarı verir; çünkü Apache tam adreste ziyaretçiye hata kodu yerine yönlendirme gönderir ve arama motorları olmayan sayfaları “yumuşak 404” sayabilir.
Güvenlik başlıkları modülü HSTS’yi yalnız sitenin açıldığı alan adı için ekler. “HSTS alt alan adlarını da kapsasın” kutusu varsayılan olarak kapalıdır; yalnız tüm alt alan adlarınızda HTTPS çalışıyorsa işaretleyin, işaretlediğinizde araç ayrıca uyarır. Tarayıcı önbelleği modülü görselleri, CSS ve JS dosyalarını ve yazı tiplerini bir yıl önbelleğe alır, HTML’i almaz; dosya adını değiştirmeden güncellediğiniz CSS ve JS dosyaları bu yüzden bazı ziyaretçilerde eski hâliyle kalabilir. Ayrıntılar için tarayıcı önbelleği ayarlama rehberine bakın.
Dosyayı nasıl yüklerim?
Oluşturduğunuz içeriği sitenizin kök dizinindeki (genellikle public_html) .htaccess dosyasına ekleyin; dosya yoksa oluşturun. WordPress kullanıyorsanız kendi kurallarınızı “# BEGIN WordPress” bloğunun dışına, genellikle üstüne yazın. Hatalı bir satır “500 Internal Server Error” hatasına yol açar; bu durumda yedeğinizi geri yükleyin. Sonucu yönlendirme kontrol ve HTTP header kontrol araçlarıyla doğrulayın.
dticaret hosting’de .htaccess
dticaret web hosting ve WordPress hosting paketlerimiz LiteSpeed altyapısıyla çalışır ve Apache biçimindeki .htaccess kurallarını okur. Dosyayı cPanel Dosya Yöneticisi’nden düzenleyebilirsiniz.
.htaccess dosyası nasıl oluşturulur?
- Modülleri seçin: İhtiyacınız olan kuralları (ör. HTTPS ve www yönlendirmesi) açın.
- Bilgileri girin: Alan adınızı ve varsa 301 yönlendirme listenizi ekleyin.
- Yedek alın: Sunucudaki mevcut .htaccess dosyasının kopyasını indirin.
- Kuralları ekleyin ve test edin: İçeriği dosyaya ekleyin, siteyi açın ve yönlendirme kontrol aracıyla doğrulayın.
Sık sorulan sorular
.htaccess değişikliği neden 500 hatası verdi?
Dosyada sunucunun tanımadığı bir yönerge veya yazım hatası var. Son eklediğiniz satırı kaldırın veya yedeğinizi geri yükleyin.
Nginx’te .htaccess kullanabilir miyim?
Hayır. Nginx dizin bazlı yapılandırma dosyalarını desteklemez; kurallar sunucu yapılandırmasına eklenmelidir.
HTTPS yönlendirmesi döngüye giriyor, neden?
Site bir CDN veya proxy arkasındaysa sunucu isteği HTTP olarak görebilir. Bu durumda oluşturulan HTTPS kuralındaki koşulu CDN’in ilettiği protokol başlığına göre düzenleyin (ör. RewriteCond %{HTTP:X-Forwarded-Proto} !https) veya HTTPS yönlendirmesini yalnızca CDN’de yapın.
.htaccess siteyi yavaşlatır mı?
Çok sayıda karmaşık kural her istekte işlendiği için çok küçük bir ek yük getirir; yüzlerce yönlendirme için sunucu yapılandırması veya eklenti tabanlı yönlendirme daha verimli olabilir.
Brotli sıkıştırma kuralı neden yok?
Araç sıkıştırma için mod_deflate (GZIP) kuralı üretir. Apache’de Brotli, mod_brotli modülü sunucuda yüklüyse ayrıca etkinleştirilir; LiteSpeed sunucularda sıkıştırma çoğunlukla sunucu yapılandırmasından yönetilir. Sitenizin hangi yöntemle sıkıştırıldığını GZIP testi ile kontrol edin.
Hotlink koruması neyi engeller?
Kural, yönlendiren (Referer) bilgisi başka bir siteyi gösteren JPG, PNG, GIF, WebP ve AVIF isteklerini reddeder; yönlendiren bilgisi boş olan istekler, yani görselin doğrudan açılması etkilenmez. Kural yalnız alan adınızı ve www’li sürümünü izinli sayar; görsellerinizi başka bir alt alan adınızdaki sayfalarda da kullanıyorsanız o adı kurala eklemeniz gerekir.
Engellediğim IP neden hâlâ siteye girebiliyor?
Site Cloudflare gibi bir CDN ya da proxy arkasındaysa sunucu ziyaretçinin değil CDN’in IP adresini görür; “Require not ip” satırı bu durumda ziyaretçiyi engellemez. Engellemeyi CDN’in güvenlik ayarlarından yapın ya da sunucunun gerçek ziyaretçi IP’sini görecek şekilde yapılandırılıp yapılandırılmadığını hosting sağlayıcınıza sorun.
İlgili araçlar ve hizmetler
Sonuçlara göre bir sonraki adımı kolaylaştıran ilgili araçlarımız ve hizmetlerimiz aşağıda.
- Hash OluşturucuMetin veya dosya için MD5, SHA-1, SHA-256 ve SHA-512 hash değerlerini tarayıcınızda hesaplayın; dosya bütünlüğünü doğrulamak için hash karşılaştırın.Tarayıcıda çalışır
- Base64 Encode / DecodeMetni Base64’e kodlayın veya Base64’ü çözün; URL güvenli Base64 ve dosyadan Data URI desteği.Tarayıcıda çalışır
- Chmod HesaplayıcıLinux dosya izinlerini kolayca hesaplayın: okuma, yazma, çalıştırma kutularını işaretleyin, 644 veya 755 gibi sayısal değeri ve chmod komutunu anında alın.Tarayıcıda çalışır
- Cron İfadesi OluşturucuZamanlanmış görevleriniz için cron ifadesi oluşturun veya mevcut ifadeyi Türkçe açıklamasıyla çözün; sonraki çalışma zamanlarını İstanbul saatiyle görün.Tarayıcıda çalışır
- URL Encode / DecodeTürkçe karakter, boşluk ve özel işaretleri URL’de güvenle kullanmak için yüzde kodlamasına çevirin veya çözün.Tarayıcıda çalışır
- CSS ve JS MinifyCSS ve JavaScript kodunuzu tarayıcınızda küçültün (minify), boyut tasarrufunu görün.Tarayıcıda çalışır