Как перенаправить 404 на index.html и переписать URL-адрес на URL главной страницы?

Я изменил громоздкий сложный веб-сайт на небольшой веб-сайт на одну страницу, поэтому пользователям нужно перенаправить с 404 на index.html.

Я помещаю это в .htaccess:

ErrorDocument 404 /index.html

Если вы наберете mydomain.com/lalalalala, это перенаправляет содержимое домашней страницы (mydomain.com/index.html), но строка URL-адреса все еще говорит mydomain.com/lalalalala.

Как перенаправить 404s на index.html и переписать URL-адрес на mydomain.com?

EDIT:

Я использую Bluehost.

Ответ 1

Вы можете использовать эти 2 строки в верхней части вашего .htaccess:

DirectoryIndex index.html
ErrorDocument 404 http://domain.com/

DirectoryIndex по умолчанию будет http://domain.com/ загружать http://domain.com/index.html, а использование http:// в ErrorDocument приведет к перенаправлению на новый URL.

Ответ 2

Попробуйте ввести код:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . / [L,R=301]

ErrorDocument 404 /index.php

Это любой 404 url для вашего home page.