Arama Yap Mesaj Gönder
Biz Sizi Arayalım
+90
X

Lütfen Ülke (Bölge) Seçiniz

Türkiye (Türkçe)Türkiye (Türkçe) Almanya (German)Almanya (German) Worldwide (English)Worldwide (English)
X

Lütfen Para Birimi Seçiniz

Türk Lirası $ US Dollar Euro
X

Lütfen Ülke (Bölge) Seçiniz

Türkiye (Türkçe)Türkiye (Türkçe) Almanya (German)Almanya (German) Worldwide (English)Worldwide (English)
X

Lütfen Para Birimi Seçiniz

Türk Lirası $ US Dollar Euro

Bize Ulaşın

Konum Halkalı merkez mahallesi fatih cd ozgur apt no 46 , Küçükçekmece , İstanbul , 34303 , TR
AllowOverride ve mod_rewrite

.htaccess ve RewriteRule Neden Çalışmıyor?

Dosyanın hiçbir etkisi yoksa sorun çoğu zaman kuralın kendisinden önce `.htaccess` dosyasının okunup okunmadığıdır. `AllowOverride None`, kapalı `mod_rewrite`, yanlış document root, `.htaccess.txt` uzantısı, alt klasör bağlamı veya NGINX-only yapı kuralları tamamen etkisiz bırakabilir.

AllowOverridemod_rewriteRewriteEngineDocument RootNGINX
Apache / LiteSpeed Diagnostics
.htaccess ignored
RewriteRule not working
AllowOverride None
Module rewrite already enabled
404 Not Found
01Dosyayı ve document root’u doğrulayın
02Yedek alıp hata logunu okuyun
03Sunucu ve uygulama bağlamını ayırın
04curl ile canlı sonucu doğrulayın
01
Güvenli teknik yaklaşım

.htaccess Çalışmıyor nasıl analiz edilir?

Dosyanın hiçbir etkisi yoksa sorun çoğu zaman kuralın kendisinden önce `.htaccess` dosyasının okunup okunmadığıdır. `AllowOverride None`, kapalı `mod_rewrite`, yanlış document root, `.htaccess.txt` uzantısı, alt klasör bağlamı veya NGINX-only yapı kuralları tamamen etkisiz bırakabilir.

01

Sunucu türünü belirleyin

Apache, LiteSpeed, Plesk proxy veya NGINX-only yapıyı ayırmadan `.htaccess` sonucu beklemeyin.

02

Yedek ve log alın

Mevcut dosyayı tarihli yedekleyin; Apache/LiteSpeed hata kaydındaki directive ve satırı bulun.

03

Tek kural değiştirin

Redirect, rewrite, header ve erişim kurallarını aynı anda topluca değiştirmeyin.

04

Dışarıdan test edin

curl ile status, Location, Content-Type ve redirect sayısını ölçüp cache katmanlarını ayrıca kontrol edin.

Dosyanın okunduğunu kanıtlamak için canlı sitede kasıtlı syntax hatası oluşturmayın.

02
Canlı sorun sözlüğü

Apache, yönlendirme ve erişim mesajları

01kritik

.htaccess tamamen yok sayılıyor

Anlamı: Dosyadaki hiçbir directive uygulanmıyor.

Muhtemel neden: AllowOverride None veya NGINX-only yapı.

02kritik

RewriteRule çalışmıyor

Anlamı: Dosya okunuyor fakat rewrite eşleşmiyor.

Muhtemel neden: Yanlış regex, baştaki slash veya kural sırası.

03uyari

mod_rewrite kapalı

Anlamı: RewriteEngine directive’i kullanılamıyor.

Muhtemel neden: Apache modülü yüklenmemiş.

04uyari

.htaccess.txt oluşmuş

Anlamı: Dosya gerçek `.htaccess` adıyla kaydedilmemiş.

Muhtemel neden: Windows uzantıları gizli.

05uyari

Yanlış document root

Anlamı: Dosya istekleri karşılamayan klasörde.

Muhtemel neden: Addon domain, subdomain veya Plesk root farkı.

06uyari

Alt klasörde baştaki slash

Anlamı: Per-directory RewriteRule pattern’i eşleşmiyor.

Muhtemel neden: Pattern `^/urun` ile başlıyor.

07uyari

Gerçek dosya kuralı engelliyor

Anlamı: Mevcut dosya/klasör istisnası rewrite’ı atlıyor.

Muhtemel neden: `-f` veya `-d` koşulu.

08bilgi

Apache restart sonrası değişmedi

Anlamı: `.htaccess` istek başına okunur; restart ana sorun değildir.

Muhtemel neden: Dosya okunmuyor veya cache katmanı var.

Bu ifadeyle eşleşen kayıt bulunamadı.

03
Kopyalanabilir kontroller

curl, Apache log ve dosya testleri

Yüklü Apache modülleri

apachectl -M 2>/dev/null | grep -E 'rewrite|headers|expires|auth_basic'

Gerekli Apache modüllerini listeler.

VirtualHost ve document root

apachectl -S

Domainlerin VirtualHost ve document root eşleşmesini gösterir.

AllowOverride araması

grep -RniE 'AllowOverride|AllowOverrideList' /etc/apache2 /etc/httpd /usr/local/apache/conf 2>/dev/null | head -n 100

Apache yapılandırmalarındaki override izinlerini bulur.

Dosya adını doğrulama

find . -maxdepth 3 -type f -iname '*htaccess*' -printf '%p\n' 2>/dev/null || find . -maxdepth 3 -type f -iname '*htaccess*' -print

Yanlış isimli veya alt klasördeki htaccess dosyalarını listeler.

Rewrite sonucu

curl -sS -o /dev/null -w 'HTTP:%{http_code} Redirects:%{num_redirects} Final:%{url_effective}\n' -L https://example.com/test-url

Rewrite/redirect sonucunu dışarıdan test eder.

Sunucu header bilgisi

curl -sSI https://example.com | grep -iE '^server:|^via:|^x-powered-by:|^cf-ray:'

Apache, LiteSpeed, NGINX veya proxy işaretlerini gösterir.

04
Doğru ve hatalı yapı

.htaccess kural karşılaştırmaları

Baştaki slash

Riskli / Hatalı
RewriteRule ^/urun/(.*)$ index.php?slug=$1 [L,QSA]
Doğru Yaklaşım
RewriteRule ^urun/(.*)$ index.php?slug=$1 [L,QSA]

RewriteEngine eksik

Riskli / Hatalı
RewriteRule ^eski$ /yeni [R=301,L]
Doğru Yaklaşım
RewriteEngine On
RewriteRule ^eski$ /yeni [R=301,L]

Front controller istisnası

Riskli / Hatalı
RewriteRule ^ index.php [L]
Doğru Yaklaşım
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ index.php [L]

NGINX-only beklentisi

Riskli / Hatalı
RewriteEngine On
RewriteRule ^urun/(.*)$ index.php?slug=$1 [L,QSA]
Doğru Yaklaşım
location / {
    try_files $uri $uri/ /index.php?$query_string;
}
05
Altyapıya göre uygulama

Apache, cPanel, Plesk, LiteSpeed ve uygulamalar

Ubuntu / Debian

Site VirtualHost içinde document root için `AllowOverride FileInfo` veya gerekli sınıflar açılmalıdır.

  • `a2enmod rewrite` durumunu kontrol edin.
  • Site config içindeki Directory path’i gerçek root ile eşleştirin.
  • Config testi sonrası kontrollü reload yapın.

cPanel / LiteSpeed

cPanel genellikle `.htaccess` desteğini açık sunar; addon domain root ve cache katmanı sık hata nedenidir.

  • Domains ekranından document root’u doğrulayın.
  • LiteSpeed Cache ve CDN purge uygulayın.
  • Ana ve alt dizindeki kuralların mirasını inceleyin.

Plesk / NGINX / WISECP

Plesk’te Apache proxy modu ile NGINX-only modu farklı davranır.

  • Apache tarafından işlenen uzantıları doğrulayın.
  • WISECP tema/route root’una doğru dosyayı yerleştirin.
  • NGINX-only ise kuralları NGINX syntax’ına dönüştürün.
Yanlış müdahaleler

Kesinlikle yapmayın

  • Dosyanın okunduğunu kanıtlamak için canlı sitede kasıtlı syntax hatası oluşturmayın.
  • AllowOverride All değerini güvenlik gereksinimini düşünmeden her dizine açmayın.
  • Kural çalışmıyor diye tüm gerçek dosya/klasör istisnalarını kaldırmayın.
  • Apache ve NGINX sözdizimini aynı dosyada karıştırmayın.
İşlem sonrası kontrol

Çözümü doğrulayın

  • Doğru `.htaccess` dosyası aktif document root içinde.
  • mod_rewrite yüklü ve gerekli AllowOverride sınıfı açık.
  • RewriteRule pattern’i per-directory bağlamında doğru eşleşiyor.
  • Cache temizliği sonrası test URL’si beklenen sonucu veriyor.
06
İç SEO içerik kümesi

İlgili .htaccess çözümleri

07
Birincil kaynaklar

Apache, WordPress ve panel belgeleri

08
Sık sorulan sorular

.htaccess Çalışmıyor hakkında merak edilenler

.htaccess Çalışmıyor kuralı NGINX’te çalışır mı?

Hayır. NGINX `.htaccess` dosyalarını okumaz. Kuralın `server` veya `location` yapılandırmasına çevrilmesi gerekir.

.htaccess değişikliği için Apache restart gerekir mi?

Genellikle hayır; Apache `.htaccess` dosyasını istek sırasında değerlendirir. Ancak sunucu VirtualHost, modül veya AllowOverride değişikliğinde reload/restart gerekir.

Dosyayı düzenlemeden önce ne yapılmalı?

Mevcut dosyanın tarihli yedeği alınmalı, aktif document root doğrulanmalı ve değişiklik staging veya düşük trafikli zamanda test edilmelidir.

cPanel ile Plesk’te dosya nerede bulunur?

cPanel’de çoğunlukla `public_html`, Plesk’te `httpdocs` içindedir; addon domain ve subdomainlerin document root’u farklı olabilir.

LiteSpeed `.htaccess` kurallarını destekler mi?

LiteSpeed Apache uyumluluğu sayesinde kuralların büyük bölümünü destekler; bazı modül ve handler davranışları farklı olabilir.

500 hatasında ilk bakılacak yer neresi?

Apache/LiteSpeed error log içindeki tam directive ve satır kaydıdır. Dosyayı rastgele silmek yerine loga göre geri alınmalıdır.

Bu kodlar doğrudan canlı siteye eklenebilir mi?

Alan adı, document root, proxy, WordPress ve sunucu yapısı doğrulanmadan doğrudan eklenmemelidir. Örnekler uyarlanıp test edilmelidir.

EKA YAZILIM VE BİLİŞİM SİSTEMLERİ

.htaccess ve Apache kurallarını siteyi erişilemez hâle getirmeden düzenleyelim

cPanel, Plesk, LiteSpeed, WordPress, özel PHP ve WISECP yapılarında yönlendirme, rewrite, CORS, erişim ve 500 hatalarını loglarla birlikte inceliyoruz.

Sunucu Desteği AlWhatsApp
Top