Как перенаправить ошибку 404 на страницу 404.php?

1

Мне нужна помощь в php. Я делаю один сайт портала в Core Php. Я создал 404 страницы. и.htaccess.

404.php:

    <html>
  <head>
    <title>404 Error - Page Not Found</title>
  </head>
  <body>404 Error - Page Not Found!</body>
</html>

.htaccess:

Redirect 404 /404.php 

Но это не работает. Если я использую этот код:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /404.html [L]
</IfModule>

Он показывает внутреннюю ошибку сервера.

Вот мой сайт: http://jobguide.australianenglishcenter.com/

Теги:

6 ответов

2
Лучший ответ

Попробуйте это в своем.htaccess:

ErrorDocument 404 http://jobguide.australianenglishcenter.com/404/

RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_URI} ^/404/$
RewriteRule ^(.*)$ <YourRelativePathToPHPFile>/404.php [L]

Здесь ErrorDocument перенаправляет все 404s на определенный URL-адрес

Правила Rewrite сопоставляют этот URL с вашим фактическим скриптом 404.php. Регулярные выражения RewriteCond могут быть сделаны более универсальными, если вы хотите, но я думаю, вам нужно явно определить все коды ErrorDocument, которые вы хотите переопределить.

ПРИМЕЧАНИЕ. Замените

  • 0
    ErrorDocument 404 jobguide.australianenglishcenter.com/404
  • 0
    это то, что я использую в .htaccess ... но не работает
Показать ещё 10 комментариев
3
ErrorDocument 404 http://example.com/404/

добавьте эту строку в htaccess и измените URL-адрес

  • 0
    не работает для меня
  • 0
    Могу ли я увидеть ваш htaccess
Показать ещё 7 комментариев
2

htacces должны выглядеть так:

ErrorDocument 404 /page404.php
0

Вы должны установить механизм перезаписи. Затем настройте страницу php для обработки ошибки 404. См. Приведенный ниже код

RewriteEngine on
ErrorDocument 404 http://www.example.com/your-404-custom-file-name.php
0

вы также можете использовать ниже, чтобы сделать все 404 requrest перенаправлением на определенную страницу

FallbackResource /index.html
  • 1
    Это не похоже на ответ ...
0

вызовите функцию:

http_send_status(404);
  • 0
    где я должен поставить этот код?
  • 2
    в файле htaccess и посмотрите данную ссылку для получения дополнительной справки stackoverflow.com/questions/437256/…
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню