Помощь Настройка 404 ошибки

KoNnY

Постоялец
Регистрация
14 Дек 2014
Сообщения
64
Реакции
7
Добрый день!

Помогите разобраться со следующей проблемой при настройке 404 ошибки для Joomla 3.4.5: если вводишь несуществующий адрес, например для каталога 2-го уровня, Для просмотра ссылки Войди или Зарегистрируйся - то сервер отдает 404 код и отображается "Страница не найдена", но если ввести несуществующий адрес сразу после имени домена, например, Для просмотра ссылки Войди или Зарегистрируйся - выдает 200 код и отображается Главная страница сайта. Получается не срабатывает 404 ошибка для несуществующих страниц 1 уровня вложенности. В чем может быть дело и как это решается?
 
Добрый день!

Помогите разобраться со следующей проблемой при настройке 404 ошибки для Joomla 3.4.5: если вводишь несуществующий адрес, например для каталога 2-го уровня, Для просмотра ссылки Войди или Зарегистрируйся - то сервер отдает 404 код и отображается "Страница не найдена", но если ввести несуществующий адрес сразу после имени домена, например, Для просмотра ссылки Войди или Зарегистрируйся - выдает 200 код и отображается Главная страница сайта. Получается не срабатывает 404 ошибка для несуществующих страниц 1 уровня вложенности. В чем может быть дело и как это решается?
Скорее всего запрос перехватывает какой нибудь плагин типо перенаправления. Посмотри расстановку плагинов.
 
.htaccess тоже проверить не мешало бы
 
Приведите пример сайта и напишите, какие ЧПУ расширения у вас стоят. А то пальцем в небо будем стрелять, в чем может быть проблема.
 
Добрый день, в joomla стоит внутренний обработчик ошибок! В корень шаблона создаешь файл error.php в него пишешь
Код:
<?php

defined('_JEXEC') or die;

if (!isset($this->error))
{
$this->error = JError::raiseWarning(404, JText::_('JERROR_ALERTNOAUTHOR'));
$this->debug = false;
}

$doc = JFactory::getDocument();
$app = JFactory::getApplication();
$this->language  = $doc->language;
$this->direction = $doc->direction;
?>
//Дальше пишешь html код, как будет выглядеть страница ошибки!
 
Добрый день, в joomla стоит внутренний обработчик ошибок! В корень шаблона создаешь файл error.php в него пишешь
Код:
<?php

defined('_JEXEC') or die;

if (!isset($this->error))
{
$this->error = JError::raiseWarning(404, JText::_('JERROR_ALERTNOAUTHOR'));
$this->debug = false;
}

$doc = JFactory::getDocument();
$app = JFactory::getApplication();
$this->language  = $doc->language;
$this->direction = $doc->direction;
?>
//Дальше пишешь html код, как будет выглядеть страница ошибки!
это лишь завершающий этап обработки 404
если компонент не вернет ошибку(404, 500 и т.п.) этот шаблон не будет подгружаться
Добрый день!

Помогите разобраться со следующей проблемой при настройке 404 ошибки для Joomla 3.4.5: если вводишь несуществующий адрес, например для каталога 2-го уровня, Для просмотра ссылки Войди или Зарегистрируйся - то сервер отдает 404 код и отображается "Страница не найдена", но если ввести несуществующий адрес сразу после имени домена, например, Для просмотра ссылки Войди или Зарегистрируйся - выдает 200 код и отображается Главная страница сайта. Получается не срабатывает 404 ошибка для несуществующих страниц 1 уровня вложенности. В чем может быть дело и как это решается?
какой компонент у вас выводится на главной странице? полагаю что не com_content
 
Хм, а для чего вообще посетителя отправлять на ошибки? Не проще его перенаправить на страницу поиска с картой сайта? Где будет разъяснено, где они могут просмотреть все ссылки на сайте.
 
это важно!
иначе поисковые системы и дальше будут выдавать в поиске ссылки, которые не существуют. Нужно дать знать им что страницы НЕТ! И это можно сделать только кодом 404

При перенаправлении код 404 не отправляется. автоматически ставится код 301 - документ перемещен. И поисковики не знают что страницы нет

В итоге все ваши усилия по СЕО (если они конечно были) пойдут насмарку, т.к. пользователи будут заходить куда попало
 
Хм, а для чего вообще посетителя отправлять на ошибки? Не проще его перенаправить на страницу поиска с картой сайта? Где будет разъяснено, где они могут просмотреть все ссылки на сайте.
Ничего не мешает показывать такую страницу и при этом отдавать код 404
 
Назад
Сверху