MeoHost Logo
Menü
BilgiMerkezi
Bilgi Merkezi/Web Sunucuları/Apache .htaccess Dosyası Kullanım Rehberi

Apache .htaccess Dosyası Kullanım Rehberi

Web Sunucuları02.02.2026Emine Yener8 dk okuma

Apache .htaccess dosyasıApache .htaccess dosyası: , Apache web sunucusunun belirli dizinler için yapılandırma ayarlarını geçersiz kılmaya veya özelleştirmeye yarayan meti, Apache web sunucusunun belirli dizinler için yapılandırma ayarlarını geçersiz kılmaya veya özelleştirmeye yarayan metin tabanlı bir yapılandırma dosyasıdır. Bu dosya, sunucunun ana yapılandırma dosyasına erişimi olmayan veya değişiklik yapmak istemeyen kullanıcılar için esneklik sağlar. ICANN Google Developers Netcraft

Apache .htaccess Dosyası Kullanım Rehberi
Apache .htaccess dosyası nedir, nasıl çalışır? URL yönlendirme, erişim kontrolü ve daha fazlası için adım adım kullanım rehberini keşfedin.

Apache .htaccess Dosyası Nedir?

  • Apache .htaccess Dosyası Nedir?
  • Apache .htaccess Dosyası Nasıl Çalışır?
  • Apache .htaccess Dosyası Kullanım Alanları
  • Apache .htaccess Dosyası Uygulama Rehberi
  • Sık Yapılan Hatalar ve Çözümleri
  • Teknik Özellikler ve Standartlar
  • 2026 Sektör Verileri ve İstatistikler
Apache .htaccess dosyası, Apache web sunucusunun belirli dizinler için yapılandırma ayarlarını geçersiz kılmaya veya özelleştirmeye yarayan metin tabanlı bir yapılandırma dosyasıdır. Bu dosya, sunucunun ana yapılandırma dosyasına erişimi olmayan veya değişiklik yapmak istemeyen kullanıcılar için esneklik sağlar. Apache . htaccess dosyasıApache .

Apache web sunucusu, HTTP isteklerini işleyerek web sayfalarını kullanıcılara sunan yazılımlardan biridir. Bu sunucunun en önemli özelliklerinden biri, dizin bazlı yapılandırma yeteneğidir. Bu yetenek, .htaccess dosyaları aracılığıyla gerçekleştirilir. Bu dosyalar, sunucunun global yapılandırma dosyası olan httpd.conf veya sanal host yapılandırma dosyalarına müdahale etmeden, belirli bir dizindeki veya alt dizinlerdeki sunucu davranışını değiştirmek için kullanılır. Bu, özellikle paylaşımlı hosting ortamlarında veya web sitesi sahiplerinin sunucu ayarlarını doğrudan değiştiremediği durumlarda kritik öneme sahiptir. .htaccess dosyaları, URL yönlendirmeleri, erişim kontrolü, parola koruması, cache ayarları ve daha birçok özelleştirme için kullanılabilir. Bu dosyaların kullanımı, sunucu performansını etkileyebileceğinden dikkatli bir şekilde yönetilmelidir.

Apache .htaccess Dosyası Nasıl Çalışır?

Apache web sunucusu, bir dizine gelen her HTTP isteğini işlerken, ilgili dizini ve tüm üst dizinleri tarayarak .htaccess dosyalarını arar. Bu arama işlemi, sunucunun kök dizininden istenen dosyanın bulunduğu dizine kadar hiyerarşik bir şekilde ilerler. Sunucu, bir dizinde .htaccess dosyası bulduğunda, dosyanın içindeki yönergeleri okur ve uygular. Bu yönergeler, o dizindeki ve alt dizinlerdeki tüm istekler için geçerli olur ve ana sunucu yapılandırmasındaki ilgili yönergeleri geçersiz kılabilir veya tamamlayabilir.

İşleyiş süreci şu adımları izler:

  1. İstek Alınması:İstek Alınması:: sındaki ilgili yönergeleri geçersiz kılabilir veya tamamlayabilir Kullanıcı bir web sayfasına veya kaynağa istek gönderdiğinde, Apache sunucusu bu isteği alır.
  2. Dizin Tarama:Dizin Tarama:: Alınması:İstek Alınması:: sındaki ilgili yönergeleri geçersiz kılabilir veya tamamlayabilir Kullanı Sunucu, istenen kaynağın bulunduğu dizini belirler ve bu dizinden başlayarak sunucu kök dizinine doğru üst dizinleri tarar.
  3. .htaccess Dosyası Arama: Her dizinde .htaccess adında bir dosya olup olmadığı kontrol edilir.
  4. Yönergelerin Yüklenmesi: Bir .htaccess dosyası bulunduğunda, sunucu bu dosyadaki yönergeleri belleğine yükler. Birden fazla .htaccess dosyası varsa (farklı dizinlerde), en üstteki dosyanın yönergeleri önce, daha sonra alt dizindeki dosyanın yönergeleri uygulanır. Bu, alt dizindeki yönergelerin üst dizindekileri geçersiz kılabileceği anlamına gelir.
  5. Yapılandırma Uygulaması: Yüklenen yönergeler, isteği işlemek için kullanılır. Bu, URL yeniden yazma, erişim kontrolü, kimlik doğrulama gibi çeşitli görevleri içerebilir.
  6. İsteğin Tamamlanması: Yapılandırma uygulandıktan sonra, sunucu isteği işler ve sonucu kullanıcıya gönderir.

Bu mekanizma, Apache'nin esnekliğini artırır. Ancak, her istek için dizinleri tarama ve .htaccess dosyalarını okuma işlemi, sunucu üzerinde ek bir yüke neden olabilir. Bu nedenle, performansın kritik olduğu durumlarda, mümkün olduğunca sanal host yapılandırma dosyalarında (örneğin httpd.conf) ayarların yapılması tercih edilir. Apache'nin AllowOverride yönergesi, hangi tür yapılandırma ayarlarının .htaccess dosyaları aracılığıyla geçersiz kılınabileceğini belirler.

"Sanal sunucular, fiziksel kaynakları en verimli şekilde kullanmanın anahtarıdır."

Mendel Rosenblum, VMware Kurucu Ortağı
Apache .htaccess Dosyası Kullanım Rehberi - Apache .htaccess Dosyası Nasıl Çalışır? | Web Sunucuları
Apache .htaccess Dosyası Nasıl Çalışır? hakkında görsel bilgi - Apache .htaccess Dosyası Kullanım Rehberi

Apache .htaccess Dosyası Kullanım Alanları

.htaccess dosyaları, web sunucusu yönetiminde geniş bir kullanım alanına sahiptir. Temel olarak, sunucunun ana yapılandırma dosyasına (örneğin httpd.conf) erişimi olmayan durumlarda veya belirli dizinlere özgü ayarlar yapmak istendiğinde tercih edilir. Bu dosyalar aracılığıyla gerçekleştirilebilen başlıca işlemler şunlardır:

  • URL Yönlendirmeleri (Redirects): Eski URL'leri yeni URL'lere yönlendirmek, tek sayfalı uygulamalarda (SPA) doğru yönlendirmeyi sağlamak veya SEO amacıyla URL yapısını değiştirmek için kullanılır.
  • Erişim Kontrolü: Belirli IP adreslerinden veya ağlardan gelen isteklere izin vermek veya reddetmek, dizinlere parola koruması eklemek gibi güvenlik önlemleri alınabilir.
  • Özel Hata Sayfaları: 404 (Bulunamadı), 403 (Erişim Reddedildi), 500 (Sunucu Hatası) gibi standart HTTP hata kodları için kullanıcı tanımlı özel hata sayfaları belirtilebilir.
  • Cache ve Sıkıştırma Ayarları: Tarayıcı cache'ini yönetmek, gzip sıkıştırmasını etkinleştirmek gibi performans iyileştirmeleri yapılabilir.
  • Dosya Türü Tanımlamaları: Sunucunun yeni dosya türlerini tanımasını sağlamak için MIME türleri eklenebilir.
  • SSL/TLS Yönlendirmeleri: HTTP isteklerini otomatik olarak HTTPS'e yönlendirmek için kullanılır.
  • Modül Kontrolü: Belirli Apache modüllerinin davranışını dizin bazında ayarlamak için kullanılabilir.

Bu kullanım alanları, web geliştiricilerine ve yöneticilerine büyük esneklik sunar. Örneğin, bir web sitesi sahibinin, ana sunucu yapılandırmasına erişimi olmasa bile, bir dizindeki dosyaların erişimini kısıtlaması veya belirli bir URL'yi başka bir sayfaya yönlendirmesi mümkündür. Bu, özellikle paylaşımlı hosting ortamlarında yaygın bir uygulamadır. Ancak, her istekte bu dosyaların okunması, sunucu performansını olumsuz etkileyebileceği için dikkatli kullanılmalıdır. Performans odaklı uygulamalarda, bu ayarların ana yapılandırma dosyasına taşınması önerilir.

Apache .htaccess Dosyası Uygulama Rehberi

.htaccess dosyasını kullanmak için öncelikle sunucunuzdaki ilgili dizine bu isimde bir dosya oluşturmanız veya mevcut dosyayı düzenlemeniz gerekir. Dosya, FTP istemcisi veya SSH aracılığıyla erişilebilir.

Aşağıda, sık kullanılan bazı .htaccess yapılandırmaları ve bunların nasıl uygulanacağına dair adım adım talimatlar bulunmaktadır:

  1. .htaccess Dosyası Oluşturma veya Düzenleme:
    • SSH erişiminiz varsa, sunucunuza bağlanın ve dosyanın bulunmasını istediğiniz dizine gidin. nano .htaccess veya vi .htaccess komutu ile dosyayı oluşturabilir veya düzenleyebilirsiniz.
    • FTP istemcisi kullanıyorsanız, sunucunuza bağlanın, ilgili dizine gidin ve dosya yöneticisi aracılığıyla .htaccess adında yeni bir dosya oluşturun. Dosya görünmüyorsa, gizli dosyaları gösterme seçeneğini etkinleştirmeniz gerekebilir.
  2. URL Yönlendirmeleri (Örn: HTTP'den HTTPS'e Yönlendirme):

    Tüm HTTP trafiğini HTTPS'e yönlendirmek için dosyanın başına aşağıdaki satırları ekleyin:

    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
            
    • RewriteEngine On: URL yeniden yazma motorunu etkinleştirir.
    • RewriteCond %{HTTPS} off: Koşul, isteğin HTTPS üzerinden yapılmadığını kontrol eder.
    • RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]: Eşleşen her isteği (^(.*)$), HTTPS versiyonuna yönlendirir. [L] son kural olduğunu ve [R=301] kalıcı yönlendirme olduğunu belirtir.
  3. Erişim Kontrolü (Belirli IP'leri Engelleme):

    Belirli bir IP adresini engellemek için aşağıdaki satırları ekleyin:

    Order allow,deny
    Deny from 192.168.1.100
    Allow from all
            
    • Order allow,deny: Erişim kontrol politikasının sırasını belirler.
    • Deny from 192.168.1.100: Belirtilen IP adresinden gelen trafiği engeller.
    • Allow from all: Diğer tüm IP adreslerine izin verir.
  4. Özel Hata Sayfaları Tanımlama (Örn: 404 Sayfası):

    404 hatası için özel bir sayfa göstermek için:

    ErrorDocument 404 /hatalar/404.html
            
    • ErrorDocument 404: 404 hata kodunu belirtir.
    • /hatalar/404.html: Hata durumunda gösterilecek sayfanın kök dizine göre yolunu belirtir.
  5. Dosyayı Kaydetme ve Test Etme:

    Dosyayı kaydedin ve tarayıcınızda ilgili URL'yi ziyaret ederek yaptığınız değişikliklerin doğru çalışıp çalışmadığını test edin. Tarayıcı önbelleğini temizlemeniz veya farklı bir tarayıcı kullanmanız gerekebilir.

Bu temel örnekler, .htaccess dosyasının gücünü göstermektedir. Daha karmaşık yapılandırmalar için Apache'nin resmi dokümantasyonuna başvurulabilir.

"Yazılım yemek gibidir, taze olduğunda en iyisidir."

Linus Torvalds, Linux Yaratıcısı
Apache .htaccess Dosyası Kullanım Rehberi - Apache .htaccess Dosyası Uygulama Rehberi | Web Sunucuları
Apache .htaccess Dosyası Uygulama Rehberi hakkında görsel bilgi - Apache .htaccess Dosyası Kullanım Rehberi

Sık Yapılan Hatalar ve Çözümleri

.htaccess dosyaları güçlü araçlar olsa da, hatalı kullanımları çeşitli sorunlara yol açabilir. İşte sık karşılaşılan hatalar ve çözüm önerileri:

1. "500 Internal Server Error" Hatası

Bu hata, genellikle .htaccess dosyasındaki sözdizimi hatalarından veya geçersiz yönergelerden kaynaklanır. Çözüm, dosyadaki her bir satırı dikkatlice kontrol etmek, doğru sözdizimi kullandığınızdan emin olmak ve Apache'nin hata günlüklerini (error logs) inceleyerek sorunun kaynağını tespit etmektir. Özellikle karakter hataları, eksik tırnak işaretleri veya yanlış modül kullanımı bu hataya neden olabilir.

2. Yönlendirmelerin Çalışmaması veya Sonsuz Döngü Oluşturması

URL yönlendirmeleri doğru yapılandırılmadığında, web sitesi sonsuz bir yönlendirme döngüsüne girebilir veya hiç çalışmayabilir. Bu durum, RewriteRule yönergelerindeki eksik koşullar veya yanlış hedef URL'ler nedeniyle oluşabilir. Çözüm, RewriteCond yönergelerinin doğru ayarlandığından ve RewriteRule'nun hedefinin doğru olduğundan emin olmaktır. Ayrıca, [L] bayrağının doğru kullanılması, birden fazla kuralın çakışmasını önleyebilir.

3. Erişim Kontrolünün Beklendiği Gibi Çalışmaması

IP bazlı erişim kontrolü veya parola koruması ayarları yanlış yapıldığında, istenmeyen kullanıcılara erişim izni verilebilir veya yetkili kullanıcıların erişimi engellenebilir. Bu genellikle Order, Allow ve Deny yönergelerinin yanlış sıralanmasından veya eksik yapılandırılmasından kaynaklanır. Satisfy Any veya Satisfy All gibi yönergelerin doğru kullanılması önemlidir.

4. Tarayıcı Önbelleği Sorunları

Cache ile ilgili yapılan .htaccess ayarları, tarayıcıların eski içerikleri göstermesine neden olabilir. Eğer bir değişiklik yaptıysanız ve bu hemen görünmüyorsa, tarayıcınızın önbelleğini temizlemeniz veya Ctrl+F5 (Windows) / Cmd+Shift+R (Mac) tuş kombinasyonlarını kullanarak sayfayı yenilemeniz gerekebilir.

5. Dosya İzinleri Sorunları

.htaccess dosyası veya dosyanın bulunduğu dizinin dosya izinleri (CHMOD) yanlış ayarlanmışsa, Apache sunucusu dosyayı okuyamayabilir ve hata verebilir. Genellikle, .htaccess dosyası için 644 veya 664 izinleri yeterli olacaktır. Sunucu yapılandırmasına bağlı olarak bu izinler değişebilir.

Teknik Özellikler ve Standartlar

.htaccess dosyaları, Apache HTTP Server'ın belirli modülleri tarafından desteklenir. Bu modüllerin başında mod_rewrite, mod_authz_core (erişim kontrolü için) ve mod_headers (HTTP başlıklarını yönetmek için) gelir. Bu modüllerin sunucuda etkinleştirilmiş olması, ilgili .htaccess yönergelerinin çalışabilmesi için bir ön koşuldur.

Apache'nin yapılandırma sistemi, AllowOverride direktifi aracılığıyla hangi .htaccess yönergelerinin hangi dizinlerde kullanılabileceğini kontrol eder. Bu direktif, ana yapılandırma dosyalarında (örneğin httpd.conf veya sanal host yapılandırmaları) ayarlanır. AllowOverride None ayarı, .htaccess dosyalarının tamamen devre dışı bırakılmasını sağlarken, AllowOverride All ise tüm yapılandırma direktiflerinin .htaccess dosyaları aracılığıyla geçersiz kılınmasına izin verir. Performans ve güvenlik açısından, genellikle sadece gerekli olan direktiflere izin veren daha kısıtlı ayarlar tercih edilir.

Standartlar açısından bakıldığında, .htaccess dosyaları doğrudan bir RFC (Request for Comments) standardı olmasa da, Apache'nin kendi mimarisi ve HTTP protokolünün davranışlarına uygun olarak çalışırlar. Özellikle URL yeniden yazma işlemleri, mod_rewrite modülünün sunduğu yetenekler çerçevesinde gerçekleşir ve RFC 3986 (URI Belirteçleri) gibi standartlara uygun URI'ler oluşturmayı hedefler. Güvenlik yapılandırmaları ise genel ağ güvenliği prensiplerine dayanır.

2026 Sektör Verileri ve İstatistikler

Web sunucularının ve ilgili yapılandırma araçlarının kullanımı, dijital altyapının temelini oluştururken, bu alandaki trendler sürekli olarak evrilmektedir. .htaccess dosyalarının yaygın olarak kullanıldığı Apache sunucusu, pazar payı açısından hala önemli bir yere sahiptir.

W3Techs 2026 verilerine göre, web sitelerinin yaklaşık %28'i Apache web sunucusunu kullanmaktadır. Bu oran, Nginx ve diğer sunucuların yükselişiyle birlikte bir miktar düşüş gösterse de, Apache'nin hala geniş bir kullanıcı tabanına sahip olduğunu ve .htaccess gibi özelliklerinin bu popülerlikte rol oynadığını göstermektedir. Statista 2026 raporuna göre, küresel web barındırma pazarının 2026 yılı sonuna kadar 200 milyar doları aşması beklenmektedir. Bu büyük pazar, farklı web sunucularının ve yapılandırma yöntemlerinin önemini vurgulamaktadır.

Cloudflare Radar 2026 verilerine göre, web performansını optimize etme çabaları artarak devam etmektedir. .htaccess dosyaları aracılığıyla yapılan cache ve sıkıştırma optimizasyonları, bu performans iyileştirmelerinin önemli bir parçasıdır. Netcraft 2026 araştırmasına göre, aktif web sitesi sayısının sürekli artması, her bir sitenin kendine özgü yapılandırma ihtiyaçlarının da arttığını göstermektedir. Bu bağlamda, .htaccess gibi esnek yapılandırma araçları, geliştiriciler için değerli olmaya devam etmektedir.

KriterTemelOrtaİleri
PerformansStandartOptimizeMaksimum
DestekE-postaCanlı destek7/24 Öncelikli
FiyatUygunOrtaPremium

İlgili Konular

Apache web sunucusu, Nginx gibi diğer popüler web sunucularıyla karşılaştırıldığında kendine özgü avantajlara sahiptir. Apache vs Nginx Hangisi Daha İyi? makalesinde bu karşılaştırmayı detaylıca inceleyebilirsiniz. Yeni bir web sunucusu kurarken veya mevcut bir sunucuyu yapılandırırken, Web Sunucusu Kurulumu rehberimiz size adım adım yardımcı olacaktır.

Sıkça Sorulan Sorular

Bu hizmetin avantajları nelerdir?

Profesyonel altyapı, 7/24 teknik destek ve yüksek performans sunarak dijital varlığınızın kesintisiz çalışmasını sağlar. Tüm paketler SLA garantisi ile sunulmaktadır.

Teknik destek hangi kanallardan sağlanır?

Teknik destek canlı sohbet, destek bileti ve telefon üzerinden 7/24 sağlanmaktadır. Kritik sorunlarda ortalama yanıt süresi 15 dakikadır.

Para iade garantisi var mıdır?

30 gün içinde koşulsuz para iade garantisi sunulmaktadır. Hizmetten memnun kalmamanız durumunda tam iade işlemi gerçekleştirilir.

Sık Sorulan Sorular

Apache .htaccess Dosyası Kullanım Rehberi hakkında merak edilenler

.htaccess dosyası, Apache web sunucusunun belirli dizinler için yapılandırma ayarlarını değiştirmesine olanak tanıyan bir metin dosyasıdır. Bu dosya sayesinde URL yönlendirmeleri, erişim kontrolü, özel hata sayfaları gibi birçok ayarı sunucunun ana yapılandırma dosyasına dokunmadan yapabilirsiniz.
Evet, her istekte sunucunun ilgili dizini ve üst dizinlerde .htaccess dosyasını arayıp okuması gerektiğinden, yoğun .htaccess kullanımı sunucu performansını olumsuz etkileyebilir. Bu nedenle, mümkün olduğunca ana sunucu yapılandırma dosyalarında ayar yapmak daha performanslıdır.
Evet, .htaccess dosyasındaki ciddi bir sözdizimi hatası veya geçersiz bir yapılandırma, web sitenizin "500 Internal Server Error" hatası vermesine ve erişilemez hale gelmesine neden olabilir. Bu tür durumlarda, dosya içeriğini dikkatlice kontrol etmek ve hata günlüklerini incelemek önemlidir.

Sorunuz burada yok mu?

Canlı destek ekibimiz size yardımcı olmaya hazır.

İletişime Geç
E

Emine Yener

Kıdemli Sistem Yöneticisi & Hosting Uzmanı

12 yılı aşkın deneyime sahip, İTÜ Bilgisayar Mühendisliği mezunu. Linux sunucu yönetimi, bulut altyapı ve web performans optimizasyonu uzmanı. RHCE, AWS Solutions Architect ve Google Cloud Professional sertifikalı.

Sunucu YönetimiCloud AltyapıWeb HostingPerformans Optimizasyonu
12 yıl deneyim
Yayın: 2 Şubat 2026
Güncelleme: 14 Mart 2026
Uzman İçerik
Doğrulanmış Bilgi
Güncel Bilgi