บนเว็บไซต์ของฉัน ฉันมีโค้ดต่อไปนี้เพื่อละเว้นส่วนขยายของหน้า php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^\.]+)$ $1.php [NC,L]
ฉันยังเพิ่มรหัสนี้เพื่อแสดงหน้า 404 ที่กำหนดเอง
เอกสารข้อผิดพลาด 404 /404
ทั้งสองอย่างนี้ทำงานแยกกันแต่ไม่ใช่เมื่อใช้ร่วมกันเมื่อฉันไปที่ลิงก์จำลองเช่น www.mydomain.com/pagethatdontexistฉันต้องการดูหน้า 404 ของฉัน แต่ฉันเห็นข้อผิดพลาด File not found ซึ่งฉันเดาว่ามาจากเซิร์ฟเวอร์ ดังนั้นฉันจึงได้รับ 404 บน 404
ฉันได้ลองเคลื่อนไหวแล้ว เอกสารข้อผิดพลาด
ลองรหัสตัวลบส่วนขยายด้านบนและด้านล่างแล้ว /404.php
เช่นกัน. ฉันยังพยายามสร้างข้อยกเว้นสำหรับ 404 like
RewriteCond %{REQUEST_URI} !^/404.php$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^\.]+)$ $1.php [NC,L]
ไม่มีอะไรทำงาน
แก้ไข: เมื่อรหัสส่วนขยายถูกลบออก และฉันไปที่ www.mydomain.com/pagethatdontexist ฉันเห็นหน้า 404 ของฉัน แต่ถ้าได้ไปเที่ยว www.mydomain.com/pagethatdontexist.php ฉันเห็นข้อผิดพลาด bland File not Found จากเซิร์ฟเวอร์ บางทีมันอาจจะให้เงื่อนงำว่าเกิดอะไรขึ้น