ในบัญชี cPanel ของฉัน ฉันมีไฟล์ htaccess ซึ่งมีลักษณะดังนี้:
RewriteEngine On
RewriteBase /
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
RewriteRule ^(.*)\.html$ $1.php [nc] //for rewrite all .php file with .html extension
RewriteRule ^$ /index.html [R=301,L] //for rewrite home page to url with index.html
RewriteRule ^/$ /index.html [R=301,L] //for rewrite home page to url with index.html
ErrorDocument 404 /404.html
ปัญหาคือ: เมื่อฉันเปิดลิงก์เช่น: https://www.domainname.tld/test -- -> ฉันมีข้อผิดพลาด 404 ที่ถูกต้อง (ไม่มีหน้า) https://www.domainname.tld/test.php หรือ test.html ---> ฉันมีข้อผิดพลาด 404 เริ่มต้นของ Apache
เรื่องนี้แปลกมาก...
ฉันติดต่อฝ่ายสนับสนุน cPanel และพวกเขาบอกว่าไม่ใช่ข้อผิดพลาดของ cPanel คุณช่วยฉันได้ไหม
RewriteRule
มีความสำคัญมากกว่าErrorDocument
เซิร์ฟเวอร์ของคุณอ่านRewriteRule ^(.*)\.html$ $1.php [nc]
แทนที่จะเป็นErrorDocument 404 /404.html
เมื่อคำขอสำหรับfile.html
- person Amit Verma   schedule 16.12.2020