Denk geldiğim sitelerde siteadi.com/ilan/2023-model-bmw yazdığımda adres doğru ve siteadi.com/ilan/2023 yazdığımda adres yanlış. Ama benim sitede bu ikinci adres yanlış olduğu halde 404 hata sayfasına yönlendiremedim.
Bu benim .htaccess deki url yapısından bir örnek:
RewriteRule ^haberler/([0-9a-zA-Z-]+)$ index.php?do=haberler&haberkategoriseo=$1 [L,QSA]Şimdi ben siteme:
benimsitem.com/haberler/spor-haberleri diye yazdığımda sayfayı sorunsuz açıyor.
benimsitem.com/haberler/adfasdfas diye yazdığımda adres yanlış olduğu halde 404 sayfasına yönlendirmiyor. Sanki sayfa varmış da veri boşmuş gibi gözüküyor.
Buna .htaccess deki ([0-9a-zA-Z-]+) kodunun neden olduğunun farkındayım. Doğal olarak, buraya ne yazarsam yazayım hata sayfasına yönlendirmeyeceğini biliyorum. Çünkü koddan bunu yapmasını ben istiyorum. Lakin bazı sitelerde bunu gördüm, yani ilk başta verdiğim siteadi.com üzerindeki örnekteki gibi bir harf bile yanlış olsa hata sayfasına yönlendiriliyor. Ben bunu yapamadım. ([0-9a-zA-Z-]+) kodunun yerine adresdeki $1 değerinde eşleşme olmadığı zaman hata sayfasına gitmesini istiyorum. Sanırım bu .htaccess de olacak bir şey değil, eğer .htaccess de bu yapılamazsa php de bunu nasıl yapabilirim ?