X

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

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

Lütfen Para Birimi Seçiniz

₺ Türk Lirası $ US Dollar
X

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

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

Lütfen Para Birimi Seçiniz

₺ Türk Lirası $ US Dollar

Apache sunucu 403 hatası nasıl düzeltilir?

AnasayfaYazılarTeknik RehberlerApache sunucu 403 hatası nasıl düze...

Apache sunucu üzerinde siteniz 403 Forbidden döndürüyorsa sorun çoğunlukla dosyanın bulunmamasından değil, Apache’nin ilgili dizini okumaya yetkili olmamasından veya sanal host erişim kuralından kaynaklanır. Önce hangi alan adı ve URL’nin hata verdiğini, ardından aynı zamana ait hata günlüğünü belirleyin. Değişiklikten önce mevcut ayarları kaydedin ve tek seferde yalnızca bir unsuru değiştirin.

Apache sunucu 403 hatasının kapsamını belirleyin

Bu yöntem, işletim sistemi ve Apache yönetici erişiminiz olan bir VPS ya da fiziksel sunucu için uygundur. Paylaşımlı hosting kullanıyorsanız sanal host dosyasına ve işletim sistemi izinlerine erişemeyebilirsiniz; bu durumda paneldeki alan adı, kök dizin ve hata günlüğü ekranlarını inceleyin. Önce hatayı tam olarak hangi URL’nin verdiğini not edin: ana sayfa, belirli bir alt dizin veya tek bir dosya farklı nedenlere işaret edebilir.

Sayfayı bir kez yeniden açmadan önce saat bilgisini kaydedin. Apache’nin hata günlüğünde, yönetim dağıtımına göre sanal hosta, siteye veya sistem günlüklerine ayrılmış kayıtlar bulunabilir. Aynı zaman aralığındaki satırda “permission denied” görülüyorsa dosya sistemi erişimini; “client denied by server configuration” benzeri bir ifade varsa Apache erişim kuralını ele alın. Günlükte hiç yeni satır oluşmuyorsa yanlış sanal hosta bakıyor veya isteğin Apache’ye ulaşmadığı bir katmanda inceliyor olabilirsiniz.

403 hatasını güvenli biçimde inceleme adımları

  1. Alan adı ve sanal host eşleşmesini kontrol edin. Apache sanal host yapılandırmasında alan adının ve HTTPS kullanıyorsanız ilgili TLS sanal hostunun doğru tanımlandığını inceleyin. İstekte kullandığınız alan adı başka bir sanal hosta düşüyorsa, doğru dosyaya müdahale etseniz bile sonuç değişmez. Kayıt doğru sanal hostu gösteriyorsa sonraki adıma geçin; yanlış eşleşiyorsa alan adı ve yapılandırma dosyasındaki host adlarını düzeltip yalnız yapılandırma sözdizimini test edin.
  2. DocumentRoot değerini ve hedef dosyayı karşılaştırın. DocumentRoot, Apache’nin site dosyalarını aradığı kök dizindir. Yapılandırmadaki bu yolu gerçek dosya konumuyla karşılaştırın; ana sayfa dosyasının ve alt dizinlerin beklenen yerde olduğunu kontrol edin. Kök dizin yanlışsa doğru yolu kaydedin, önceki değeri not edin ve yalnız bu yolu düzeltin. Doğru yolda dosya yoksa 403 yerine bazı kurulumlarda 404 görülebilir; bu nedenle sonucu tek başına izin kanıtı saymayın.
  3. Dosya sistemi izin zincirini inceleyin. Apache’nin çalıştığı kullanıcı, kök dizine ve üst dizinlere geçiş yapabilmeli; dosyayı da okuyabilmelidir. Bir üst dizinin geçiş izni yoksa dosyanın kendi okuma izni doğru olsa bile 403 oluşabilir. Sahiplik, grup ve dizin izinlerini panelde veya sunucu yönetim aracında inceleyin; uygulamanın kullandığı kullanıcı modeline uygun, dar kapsamlı bir düzeltme yapın. Tüm dosyalara geniş izin vermek veya 777 kullanmak güvenli bir düzeltme değildir. Bu kontrolde kayıt “permission denied” diyorsa hedeflenen dizin ya da dosyanın sahiplik ve erişim zincirini düzeltin; kayıt Apache kuralını gösteriyorsa bir sonraki adıma geçin.
  4. Directory ve .htaccess erişim kurallarını kontrol edin. DocumentRoot için tanımlı Directory bloğunda erişimi engelleyen bir Require kuralı, üst yapılandırmadan miras kalan bir kural veya hatalı bir .htaccess yönergesi bulunabilir. Son değişiklik tarihini yapılandırma geçmişiyle karşılaştırın. Belirli bir dizinde engel varsa yalnız o kuralı geçici ve kontrollü biçimde düzeltin; kimlik doğrulama, IP kısıtlaması veya güvenlik politikasını topluca kaldırmayın. Günlükte “client denied by server configuration” görünmesi, bu adımın dosya izinlerinden daha olası olduğunu gösterir.
  5. Yapılandırmayı yüklemeden önce sözdizimini test edin. Yönetici erişiminiz varsa ortamın sunduğu Apache yapılandırma test aracını, yaygın kurulumlarda apachectl -t biçimindeki salt okuma testini çalıştırın. Örnek sonuç Syntax OK olabilir; bu ifade erişim izninin düzeldiğini değil, dosyanın sözdizimsel olarak okunabildiğini gösterir. Hata satır numarası verirse değişiklik yaptığınız dosyada ilgili yönergeyi düzeltin ve test başarılı olmadan yeniden yükleme yapmayın.
  6. Aynı isteği tekrarlayıp yeni kanıtı inceleyin. Başarılı testten sonra sağlayıcının veya işletim sisteminin güvenli Apache yeniden yükleme yöntemini kullanın; genel bir çözüm olarak servisi durdurup başlatmayın. Daha sonra başlangıçta hata veren aynı URL’yi aynı koşullarda açın. Yeni zaman damgalı hata satırı oluşmadı ve sayfa açıldıysa düzeltme doğrulanmıştır. 403 devam ediyorsa yeni satırın önceki “permission denied” kaydından farklı olup olmadığına bakın; yeni neden görünüyorsa ilk bulguyu tüm sorunun açıklaması kabul etmeyin.

Bulguya göre doğru düzeltmeyi seçin

Diyelim ki /urunler isteğinde 403 alıyorsunuz ve hata günlüğü belirli bir dizin için “permission denied” yazıyor. DocumentRoot doğru, ancak üst dizinlerden birinin Apache kullanıcısının geçişine izin vermediği görülüyor. Bu durumda erişimi yalnız gerekli dizin zincirinde, mevcut sahiplik modelini koruyarak düzeltmek mantıklıdır; .htaccess dosyasını değiştirmek bu bulguyla doğrudan ilişkili değildir.

Başka bir durumda aynı URL için günlükte “client denied by server configuration” kaydı bulunabilir. Dosya izinlerini değiştirmek yerine ilgili Directory bloğunda veya .htaccess dosyasında erişimi engelleyen kuralın kaynağını araştırın. Kural bilinçli bir yönetim veya IP kısıtlamasıysa kaldırmak yerine hedef URL, ağ adresi ve kimlik doğrulama amacını doğrulayın. İstek tüm alan adlarında 403 veriyor ve Apache günlüğüne hiç ulaşmıyorsa DNS, ters proxy veya üst güvenlik katmanını ayrıca incelemek gerekir.

Değişiklik işe yaramazsa güvenli geri dönüş

Her değişiklikten önce yapılandırma dosyasının özgün kopyasını, önceki DocumentRoot değerini ve sahiplik bilgilerini not edin. 403 sürerse son değiştirdiğiniz tek ayarı geri alın, yapılandırma testini yeniden çalıştırın ve aynı URL için yeni günlük kaydını kontrol edin. Böylece iki farklı sorunu birbirine karıştırmadan önceki duruma dönebilirsiniz. Paylaşımlı hostingde günlük satırına veya sanal host ayarına erişemiyorsanız, alan adı, URL, deneme saati ve görülen hata koduyla sağlayıcının teknik kaydına başvurun; parola, token veya kişisel günlük içeriği paylaşmayın.

Sunucu mimarinizi ve erişim modelinizi ayrıca değerlendirmek istiyorsanız sunucu kiralama çözümleri sayfasını inceleyebilirsiniz. İlk pratik adım, aynı 403 isteğini yeniden üretip yeni zaman damgalı Apache hata satırını bulmak ve düzeltmeyi o bulgunun türüne göre sınırlamaktır.


Top