Linux'ta Apache 403 Yasak Hatası Nasıl Düzeltilir


Apache web sunucusu, kararlılığı ve güvenilirliği sayesinde en popüler ve yaygın olarak kullanılan açık kaynaklı web sunucularından biridir. Web sunucusu, özellikle web barındırma platformlarında büyük bir pazara hakimdir.

Ancak web sitenizi kurduktan sonra tarayıcınızda “Yasak – Bu sunucuya erişim izniniz yok” hatası alabilirsiniz. Bu oldukça yaygın bir hatadır ve kullanıcıların büyük bir kısmı sitelerini test ederken bu hatayla karşılaşmıştır. Peki nedir bu hata?

403 Yasak Hatası Nedir?

403 Yasak hatası olarak da adlandırılan Apache'nin 'Yasak Hatası', kısıtlanmış veya yasaklanmış bir web sitesine erişmeye çalıştığınızda bir web sayfasında görüntülenen bir hatadır. .

Web sunucusunun isteği anladığını ancak izin sorunları nedeniyle erişime yetki veremediğini belirten standartlaştırılmış bir HTTP durum kodudur.

Genellikle gösterildiği gibi tarayıcıya sıçrar.

Ayrıca hata, aşağıda belirtildiği gibi tarayıcıda çeşitli şekillerde ortaya çıkabilir:

  • HTTP Hatası 403 – Yasak
  • Yasak: Bu sunucudaki [dizine] erişim izniniz yok
  • 403 yasak
  • Erişim Reddedildi Erişim izniniz yok
  • İdari kurallar tarafından yasaklanan 403 yasak istek

403 Yasak Hatasının Nedenleri Nelerdir?

'403 Yasak Hata' aşağıdaki ana nedenlerden dolayı ortaya çıkar:

1. Yanlış Dosya/Dizin İzinleri

Bu hata, webroot dizinindeki hatalı dosya/klasör izinleri nedeniyle tetiklenebilir. Varsayılan dosya izinleri, kullanıcılara web sitesi dosyalarına erişim sağlayacak şekilde ayarlanmamışsa, bu hatanın bir web tarayıcısında ortaya çıkma olasılığı yüksektir.

2. Apache Yapılandırma Dosyalarının Yanlış Yapılandırılması

Bu hata aynı zamanda Apache yapılandırma dosyalarından birinin yanlış yapılandırılmasıyla da ilişkilendirilebilir. Yapılandırma dosyasına eklenen yanlış bir parametre veya eksik yönergeler olabilir.

3. .htaccess Dosyasının Yanlış Yapılandırılması

Bu HTTP yanıt koduyla karşılaşmanın bir başka sık görülen nedeni de hasarlı veya yanlış yapılandırılmış bir .htaccess dosyasıdır. Bu durum oluştuğunda, 403 Yasak hatası genellikle .htaccess dosyası değiştirildikten sonra ortaya çıkar.

Kullanıcılar genellikle yeni bir .htaccess dosyası oluşturarak veya yapılandırmalarını düzelterek bu sorunu çözebilirler.

Apache '403 Yasak Hatası'nın Düzeltilmesi

Bu hatayla karşılaştıysanız, bunu düzeltmek için uygulayabileceğiniz birkaç adımı burada bulabilirsiniz.

1. Webroot Dizininin Dosya İzinlerini ve Sahipliğini Ayarlayın

Yanlış dosya izinleri ve dizin sahipliğinin web sitesi dosyalarına erişimi kısıtladığı bilinmektedir. Bu nedenle, öncelikle dosya izinlerini gösterildiği gibi web kökü dizinine yinelemeli olarak atadığınızdan emin olun.

Web kökü dizini her zaman YÜRÜT izinlerine sahip olmalı ve index.html dosyası da OKU izinlerine sahip olmalıdır.

cd /path/to/webroot/directory 
sudo find . -type d -exec chmod 755 {} \;
sudo find . -type f -exec chmod 644 {} \;

Yukarıdaki bulma komutu, geçerli (.) dizini içindeki tüm dizinleri (klasörleri) ve dosyaları bulmak ve izinlerini 755 (dizinler) ve 644 olarak ayarlamak için kullanılır. (dosyalar).

Ayrıca, gösterildiği gibi chown komutunu kullanarak dosya ve dizinlerin sahipliğini belirli bir kullanıcıya (tecmint) göre ayarlayın ve www-data veya Apache grubunu belirtin .

sudo chown -R tecmint:apache .

Son olarak, değişikliklerin etkili olması için Apache web sunucusunu yeniden yükleyin veya yeniden başlatın.

sudo systemctl restart apache2
OR
sudo systemctl restart httpd

Bu sorunu çözmezse bir sonraki adıma geçin:

2. Apache Ana Yapılandırma Dosyasındaki Yönergeleri Ayarlayın

Debian tabanlı Linux veya RHEL tabanlı dağıtımlar kullanıyorsanız, genellikle httpd.conf veya apache2.conf olarak adlandırılan ana Apache yapılandırma dosyasını açın.

sudo nano /etc/httpd/httpd.conf       # For Apache on CentOS/Red Hat
sudo nano /etc/apache2/apache2.conf   # For Apache on Debian/Ubuntu

Web sitenizin web belgesi köküne karşılık gelen bölümünü bulun ve AllowOverride yönergesinin "All" olarak ayarlandığından emin olun. . Bu, .htaccess dosyalarının yapılandırma ayarlarını geçersiz kılmasına olanak tanır.

<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

/var/www/html yolunu, web sitenizin belge kökünün gerçek yoluyla eşleşecek şekilde değiştirin.

Kaydedip çıkın ve ardından Apache'yi yeniden başlatın.

sudo systemctl restart httpd     # For Apache on CentOS/Red Hat
sudo systemctl restart apache2   # For Apache on Debian/Ubuntu

. .htaccess Dosya Yapılandırmasını Düzeltme

Web dizininizde bir .htaccess dosyanız varsa yapılandırmasını kontrol edin. Yanlış yapılandırılmış bir yapılandırma ayarları veya herhangi bir sözdizimi hatası, kullanıcıların belirli web içeriğine erişmesini engelleyebilir.

Sorunu çözüp çözmediğini görmek için satırları yorumlayın veya dosyayı geçici olarak kaldırın.

Tüm bu adımları denedikten sonra hala hatayı alıyorsanız lütfen sanal ana bilgisayar dosyalarınızın yapılandırmasını kontrol edin.

Apache Sanal ana bilgisayar dosyasını nasıl yapılandırabileceğinizle ilgili ayrıntılı makalelerimiz var:

"Yasak - Bu sunucuya erişim izniniz yok" hatasının çözümü, dosya izinlerinin, sahipliğinin ve sunucu yapılandırmasının kontrol edilmesini ve ayarlanmasını içerir.

Umarım sağlanan adımlar 403 hatasını gidermenize yardımcı olmuştur.