Ошибка 404 или страница не найдена – одна из распространенных ошибок, из-за которой посетители покидают сайты и могут больше никогда туда вернуться. Она появляется, если посетитель ввел несуществующий адрес сайта. По умолчанию в joomla встроена страница ошибки 404, но, скорее всего, она не красивая и не имеет ничего общего с шаблоном Вашего сайта. Именно поэтому Вы можете создать…
Ошибка 404 или страница не найдена – одна из распространенных ошибок, из-за которой посетители покидают сайты и могут больше никогда туда вернуться. Она появляется, если посетитель ввел несуществующий адрес сайта. По умолчанию в joomla встроена страница ошибки 404, но, скорее всего, она не красивая и не имеет ничего общего с шаблоном Вашего сайта.
Именно поэтому Вы можете создать свою страницу, которая будет сообщать посетителям об открытии несуществующего адреса.
Недавно на одном из своих сайтов я благополучно создал страницу с ошибкой 404, пользуясь статьей «Как создать страницу «Ошибка 404! Страница не найдена»». Все получилось отлично и выглядела довольно симпатично. Но, когда по этому же примеру я сделал страницу с ошибкой на своем втором сайте, то она у меня не срабатывала и все равно продолжала перенаправлять посетителей на встроенную в joomla страницу.
Поискав информацию в Интернете, я ничего не нашел. Мне даже показалась, что с такой «проблемой» столкнулся только я, так как никто ранее не создавал тем на эту тему на форумах и не описывал в статьях.
Что я только не пробовал сделать:
- и пытался исправить файл .htaccess (по рекомендации хостинга)
- и делал перенаправление из администраторской панели хостинга
- и создавал страницу с кодом, который просто должен был перенаправить на мою страницу
- и др.
Короче говоря, что бы я ни делал, ничего не помогало, и созданная мной страница не открывалась. Но все же, я понимал, что проблема не может быть в самой joomla или на хостинге, так как оба мои сайты расположены на одном хостинге, имеют одинаковые настройки и на одинаковых версиях joomla.
Не найдя быстрого ответа, я решил заняться данной проблемой чуть позже.
Простое решение для срабатывания страницы «ошибка 404».
Вернувшись через несколько дней к вопросу с перенаправлением на страницу «Ошибка 404» я заметил, что после смены шаблона joomla все правильно срабатывало, но как только я снова ставил тот шаблон, который мне нравился, страница с ошибкой снова не открывалась. Покопавшись немного в файлах, я заметил, что в моем шаблоне отсутствовал файл error.php, который должен располагаться по адресу ИмяСайта/templates/Шаблон/error.php.
Я решил скопировать файл error.php из шаблона «system» в мой шаблон. В результате перенаправление срабатывало нормально, но страница выглядела не правильно. Тогда я решил попробовать другие файлы и единственный, который на 100% подошел, имел такой код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->language; ?>" lang="<?php echo $this->language; ?>" dir="<?php echo $this->direction; ?>"> <head> </head> <body> <?php if ($this->_error->get('code') == '404') { header("HTTP/1.0 404 Not Found"); header('Location: /error404.html'); exit; } ?> </body> </html>
После создания в папке с шаблоном файла error.php все нормально заработало.
Вывод. |