. Apache htaccess: ErrorDocument ve YenidenYazmaMotoru birlikte çalışmıyor

3 Cevap php

Aşağıdaki. Htaccess bir göz atın lütfen

ErrorDocument 404 /404/

RewriteEngine On
RewriteRule (.*) index.php [L]

Bu kurulum ile, hata işleme sayfasına yönlendirmek ve uygun HTTP durum kodu göndermek için header('HTTP/1.1 404 Not Found'); PHP kullanıyorum. Doğru 404 durum kodu gönderdi, ancak tarayıcınızda boş bir sayfa gösteriyor ve erişim Kayıtta "GET /invalid-url/ HTTP/1.1" 404 - edilir

Herkes nasıl Apache URL ile ErrorDocument çalışma yeniden yazar yapmak için bana söyleyebilir misiniz?

3 Cevap

Evet Rewrite kurallardan sonra 404 belgeyi beyan

Bu sunucu tek bir yeniden yazma kuralı olarak herkesi kucaklayan regexpi ((. *)) Kullanıyorsanız, herhangi bir 404 hatası itmeyin normal.

But your issue is not really htaccess related. In php if you send 404 header the browser wont be redirected to the 404 page automaticaly, but you have to serve error page content yourself in PHP, as it is done by most frameworks with internal routing system.

Eğer Rewrite before ErrorDocument tanımlamak eğer çalışması gerekir.

Bu deneyin


ErrorDocument 404 /404.html

RewriteEngine On
RewriteRule (.*) index.php [L]