---

--  ->   Интеграция дизайна, настройка системы  ->  Проблема с 404 редиректом


Вопросы по интеграции, настройке шаблонов, конфигурации системы.



Добавлено: 09.07.13 09:32:07 #1



Регистрация: 09.07.13
Сообщений: 13


Обратиться по имени

Здравствуйте.
Такая проблема:
На сайте если страница не найдена идет перенаправление на главную страницу. При этом в настройках менеджера сайта эта функция выключена. В .htaccess прописана строка ErrorDocument 404 /pages.php. Если вместо pages.php пишу свою страницу, 404 ошибка выдается на всех страницах, кроме главной.
Подскажите как настроить свою 404 страницу.
Заранее спасибо.
Добавлено: 09.07.13 11:59:02 #2



Регистрация: 11.06.13
Сообщений: 202


Обратиться по имени

Здесь ваша проблема обсуждается:
http://www.amiro.ru/forum/nastrojka-sistemy/nastrojka-stranicy-404-stranica-ne
Добавлено: 09.07.13 12:35:52 #3



Регистрация: 09.07.13
Сообщений: 13


Обратиться по имени

Я создала такую страницу, назначила ее страницей 404. Назначила ей модуль 404. Однако ничего не изменилось(
Добавлено: 09.07.13 12:48:31 #4



Регистрация: 11.06.13
Сообщений: 202


Обратиться по имени

А все предыдущие изменения, .htaccess например вы изменили обратно - как было?

Напишите в техподдержку, если все изменили как было и просто страницу создали с типом 404 ошибки, и все-равно не работает.

Только адрес им скажите и пароль с логином, чтобы было что смотреть)
Добавлено: 09.07.13 12:50:08 #5



Регистрация: 09.07.13
Сообщений: 13


Обратиться по имени

Хорошо, спасибо)
Добавлено: 30.08.13 17:35:02 #6



Регистрация: 22.11.06
Сообщений: 228


Обратиться по имени

Добрый день,
В данный момент сайт корректно выдает ошибку “404 Not Found” при запросе несуществующей страницы (напр., http://www.baulux.ru/xxx). Однако, для некоторых страниц, например, страниц каталога или статей, обработка некорректна. Так, к примеру, мы обнаружили, что при запросе адресов вида http://www.baulux.ru/katalog/xxx (где ххх – несуществующий в каталоге адрес), сервер выдает код 200, сообщающий поисковому роботу о том, что страница существует.
Где нужно подкрутить, чтобы соблюдалась однозначность адресации? Каждая страница должна быть доступна только по одному адресу. Все остальные адреса, по которым она может быть получена браузерами, роботами и прочими веб-клиентами, должны возвращать код ответа 404.
спасибо.
Добавлено: 02.09.13 10:50:48 #7



Регистрация:


Обратиться по имени

Андръ:
Так, к примеру, мы обнаружили, что при запросе адресов вида http://www.baulux.ru/katalog/xxx (где ххх – несуществующий в каталоге адрес), сервер выдает код 200, сообщающий поисковому роботу о том, что страница существует.


Вы проверяли какой возвращается заголовок или определили это по внешнему виду страницы?
Добавлено: 03.09.13 11:33:07 #8



Регистрация:


Обратиться по имени

Андръ, данная проблема будет исправлена в одном из следующих обновлений системы.
Добавлено: 20.03.14 12:12:27 #9



Регистрация: 14.07.08
Сообщений: 1006


Обратиться по имени

Артем (artemz), исправлена ли ошибка, о которой говорится ниже, в текущей версии 6.0.4.8?

Добрый день,
В данный момент сайт корректно выдает ошибку “404 Not Found” при запросе несуществующей страницы (напр., http://www.baulux.ru/xxx). Однако, для некоторых страниц, например, страниц каталога или статей, обработка некорректна. Так, к примеру, мы обнаружили, что при запросе адресов вида http://www.baulux.ru/katalog/xxx (где ххх – несуществующий в каталоге адрес), сервер выдает код 200, сообщающий поисковому роботу о том, что страница существует.
Где нужно подкрутить, чтобы соблюдалась однозначность адресации? Каждая страница должна быть доступна только по одному адресу. Все остальные адреса, по которым она может быть получена браузерами, роботами и прочими веб-клиентами, должны возвращать код ответа 404.
спасибо.
Добавлено: 20.03.14 16:15:17 #10



Регистрация: 22.10.12
Сообщений: 35


Обратиться по имени

@Дмитрий:
исправлена ли ошибка, о которой говорится ниже, в текущей версии 6.0.4.8?


В текущей версии ошибка еще присутствует.

В качестве временного решения можно добавить в /_local/front_functions.php следующий код -

AMI_Event::addHandler('v5_on_before_init', 'handleEshopAction', AMI_Event::MOD_ANY);

function handleEshopAction($name, array $aEvent, $handlerModId, $srcModId){
    $aPageInfo = AMI_Registry::get('page');
    if(!empty($aPageInfo) && $aPageInfo['modId'] == 'eshop_item' && $aPageInfo['catId'] == -1){
        header('HTTP/1.1 301 Moved Permanently');
        header('Location: /page_404');
        header('Expires: Sun, 09 May 2010 06:00:00 GMT');
        header('Cache-Control: no-cache, must-revalidate');
        header('Pragma: no-cache');
        die();
        }
    return $aEvent;
    }

/page_404 - адрес 404 страницы.
Добавлено: 20.03.14 16:18:06 #11



Регистрация: 14.07.08
Сообщений: 1006


Обратиться по имени

Dmitry Kornilov, спасибо, попробуем и отпишемся обязательно о результатах в этой ветке.
Добавлено: 14.04.14 17:56:13 #12



Регистрация: 14.07.08
Сообщений: 1006


Обратиться по имени

Dmitry Kornilov, если использовать ваше решение, то сервер будет отдавать совсем не ту информацию, что необходимо, как решить проблему на текущей версии?
HTTP/1.1 301 Moved Permanently
Server: nginx/1.4.4
Date: Mon, 14 Apr 2014 13:52:49 GMT
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
X-Powered-By: PHP/5.3.28-1~dotdeb.0
Location: /page_404
Expires: Sun, 09 May 2010 06:00:00 GMT
Cache-Control: no-cache, must-revalidate
Pragma: no-cache

И даже предложенное решение срабатывает через раз, вот при повторном обращении на несуществующую страницу
HTTP/1.1 200 OK
Server: nginx/1.4.4
Date: Mon, 14 Apr 2014 13:54:43 GMT
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
Vary: Accept-Encoding
X-Powered-By: PHP/5.3.28-1~dotdeb.0
Expires: Mon, 26 Jul 1997 05:00:00 GMT
Cache-Control: no-cache, no-store, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Status: 200 OK
X-Wm-out: Cached
Добавлено: 18.04.14 16:58:00 #13



Регистрация: 22.10.12
Сообщений: 35


Обратиться по имени

Другого решения, к сожалению, предложить сейчас не можем.

Код ответа непосредственно на странице с ошибкой изменить возможности нет (поэтому используется редирект на страницу 404 ошибки).

Ожидаем исправление ошибки в одном из следующих обновлений.


Создать статью Ответить
ВебСтолица.РУ: создай свой бесплатный сайт!  | Пожаловаться  
Движок: Amiro CMS