Bu yazıda, Nginx 404 hatasının nedenlerini ve bu hatayı nasıl kolayca çözeceğini adım adım inceleyeceğiz. Hadi başlayalım!
Nginx 404 Hatası: Neyin Nesi?
- Yanlış URL: Kimi zaman, kullanıcının yanlış bir URL girmesi 404 hatasına yol açabilir. Basit bir yazım hatası bile bunu tetikleyebilir.
- Eksik Dosyalar: Sunucunda istenen dosya veya sayfa gerçekten yoksa, 404 hatası alman kaçınılmazdır.
- Yanlış Nginx Yapılandırması: Eğer sunucundaki Nginx yapılandırmasında bir problem varsa, doğru yönlendirmeler yapılmayabilir ve bu da hataya yol açabilir.
- Yanlış Dosya İzinleri: Dosyaların doğru okuma izinlerine sahip olmaması da 404 hatasına neden olabilir.
Bu sorunları çözmeden önce, doğru bir şekilde anlamamız gerekir. Şimdi bu hatanın nedenlerini keşfetmek ve çözüm yollarını öğrenmek için derinlere inelim.
404 Hatası Çözüm Yöntemleri
Çoğu zaman, 404 hatası, yanlış yapılandırılmış Nginx dosyalarından kaynaklanır. Özellikle `/etc/nginx/sites-available/default` dosyasındaki yönlendirmeler ve kök dizin ayarları hatalı olabilir. Bu yüzden yapılandırma dosyasını kontrol etmek ilk adım olmalı.
Aşağıdaki adımları takip et:
1. Yapılandırma Dosyasını Aç:
```bash
sudo nano /etc/nginx/sites-available/default
```
2. Döküman Kökünü Kontrol Et: `root` direktifi, web sunucusunun hangi dizinden çalışacağını belirtir. Kök dizini doğru belirlediğinden emin ol.
```nginx
server {
listen 80;
server_name example.com;
root /var/www/html;
index index.html index.htm;
}
```
3. Yapılandırmayı Test Et ve Nginx'i Yeniden Başlat: Yapılandırma dosyasını kaydettikten sonra, değişikliklerin doğru bir şekilde uygulandığından emin olmak için şu komutu çalıştır:
```bash
sudo nginx -t
```
Eğer yapılandırma doğruysa, ardından Nginx servisini yeniden başlat:
```bash
sudo systemctl restart nginx
```
# 2. Dosya İzinlerini Düzenlemek
```bash
sudo chmod -R 755 /var/www/html
```
Bu komut, `/var/www/html` dizinindeki tüm dosyaların okunabilir, yazılabilir ve çalıştırılabilir olmasını sağlar. Eğer sorun devam ederse, kullanıcı ve grup izinlerini kontrol etmek de faydalı olabilir.
# 3. Dosyanın Gerçekten Mevcut Olduğundan Emin Olmak
Örneğin:
```bash
ls -l /var/www/html/index.html
```
Eğer dosya yoksa, doğru dosyayı yüklemeyi unutma!
# 4. Nginx Cache Temizlemek
```bash
sudo rm -rf /var/cache/nginx/*
```
Ardından, Nginx servisini yeniden başlatarak önbelleği sıfırlayabilirsin:
```bash
sudo systemctl restart nginx
```
# 5. Yeniden Yönlendirmeleri Kontrol Etmek
Örneğin, aşağıdaki gibi bir yapılandırma kullanarak eski sayfalardan yeni sayfalara yönlendirme yapabilirsin:
```nginx
server {
listen 80;
server_name example.com;
location /eski-sayfa {
rewrite ^/eski-sayfa$ /yeni-sayfa redirect;
}
}
```
Sonuç: 404 Hatasını Kolayca Çöz!
Eğer hala sorun devam ediyorsa, hata loglarını kontrol etmek de faydalı olabilir:
```bash
tail -f /var/log/nginx/error.log
```
Her şey yolunda gittiğinde, artık sitenin sorunsuz bir şekilde çalıştığını görmek seni çok mutlu edecek!