Перейти к содержимому


Фотография

404 Not Found - Отправляем корректный заголовок


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 13

#1 afwollis

afwollis World

    \"\(о_о)/"/ часто в разъездах...

  • Ветеран сообщества
  • PipPipPip
  • 12 079 сообщений
1 105
Очень хороший
  • ГородДонецк (Ukraine)

Отправлено 11 Март 2013 - 12:05

Много раз обсуждалось, вариантов решения несколько, но вот самый простой:

в самом начале файла /catalog/view/theme/[ваша тема]/template/error/not_found.tpl
вставить

<?php
header ("HTTP/1.1 404 Not Found");
?>


Спасибо, riny.


Обращаем ваше внимание на то, что этот вариант нежелательно использовать, так как посылать заголовок из шаблона, мягко говоря, неправильно.
Позже опубликуем тут самое корректное решение.

Спасибо rb2 за волшебный пендель :ugeek:

Сообщение отредактировал afwollis: 11 Март 2013 - 01:19

  • -1

Если вы не готовы работать над своим сайтом как следует - то я тогда над ним тоже работать не готов. (с)
FAQ :: Как писать об ошибках :: мои дополнения на этом форуме
Каталог тем про модули, где есть модули или полезные решения по ним
На сообщения, содержащие код или текст ошибок, не заключенный в один из тегов (code, html, php, sql), скорее всего не отвечу.
Принимаются благодарности: Webmoney -> Z260893507680, R192563732050
80977-1.png


#2 maxun

maxun World

    Пользователь

  • Пользователи
  • PipPip
  • 84 сообщений
1
Обычный

Отправлено 25 Март 2013 - 03:02

Почему может не редиректить на not_found.tpl
Или как правильно это прописать?
Сейчас что ни вобью - все одно выдает вбитые URL вместо спец страницы.
  • 0

#3 afwollis

afwollis World

    \"\(о_о)/"/ часто в разъездах...

    Топикстартер
  • Ветеран сообщества
  • PipPipPip
  • 12 079 сообщений
1 105
Очень хороший
  • ГородДонецк (Ukraine)

Отправлено 07 Апрель 2013 - 04:03

maxun, маятваянипанимай


  • 0

Если вы не готовы работать над своим сайтом как следует - то я тогда над ним тоже работать не готов. (с)
FAQ :: Как писать об ошибках :: мои дополнения на этом форуме
Каталог тем про модули, где есть модули или полезные решения по ним
На сообщения, содержащие код или текст ошибок, не заключенный в один из тегов (code, html, php, sql), скорее всего не отвечу.
Принимаются благодарности: Webmoney -> Z260893507680, R192563732050
80977-1.png


#4 Rrrichard

Rrrichard World

    Пользователь

  • Пользователи
  • PipPip
  • 59 сообщений
6
Обычный

Отправлено 16 Апрель 2013 - 09:44

maxun, маятваянипанимай

 
Вот содержимое not_found.tpl

 

<?php echo $header; ?><div id="contentwrapper"><?php echo $column_left; ?><?php echo $column_right; ?>
<div id="content"><?php echo $content_top; ?>
  <div class="breadcrumb">
    <?php foreach ($breadcrumbs as $breadcrumb) { ?>
    <?php echo $breadcrumb['separator']; ?><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a>
    <?php } ?>
  </div>
  <h1><?php echo $heading_title; ?></h1>
  <div class="content"><?php echo $text_error; ?></div>
  <div class="buttons">
    <div class="right"><a href="<?php echo $continue; ?>" class="button"><?php echo $button_continue; ?></a></div>
  </div>
  <?php echo $content_bottom; ?></div></div>
<?php echo $footer; ?>
 

 

Куда тут надо вписать

<?php
header ("HTTP/1.1 404 Not Found");
?>
 

  • 0

#5 afwollis

afwollis World

    \"\(о_о)/"/ часто в разъездах...

    Топикстартер
  • Ветеран сообщества
  • PipPipPip
  • 12 079 сообщений
1 105
Очень хороший
  • ГородДонецк (Ukraine)

Отправлено 18 Апрель 2013 - 02:39

да ты шутник, как я посмотрю.

читаешь темы только со второго сообщения?


  • 0

Если вы не готовы работать над своим сайтом как следует - то я тогда над ним тоже работать не готов. (с)
FAQ :: Как писать об ошибках :: мои дополнения на этом форуме
Каталог тем про модули, где есть модули или полезные решения по ним
На сообщения, содержащие код или текст ошибок, не заключенный в один из тегов (code, html, php, sql), скорее всего не отвечу.
Принимаются благодарности: Webmoney -> Z260893507680, R192563732050
80977-1.png


#6 Zeppelin

Zeppelin World

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 673 сообщений
85
Очень хороший
  • ГородНовосибирск

Отправлено 18 Апрель 2013 - 05:35

по этой ссылке можно проверить вывод заголовков как для разных браузеров, так и для поисковых роботов

 

Кстати, мне больше понравился вот такой совет:

 

В контроллерах продукта (catalog/controller/product/product.php), категории (catalog/controller/product/category.php), производителя (catalog/controller/product/manufacturer.php) и т.п. где это необходимо :)

 

перед


       if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/error/not_found.tpl')) {
                $this->template = $this->config->get('config_template') . '/template/error/not_found.tpl';
            } else {
                $this->template = 'default/template/error/not_found.tpl';
            }
 

 

нужно вставить

 

              $this->response->addHeader($this->request->server['SERVER_PROTOCOL'] . '/1.1 404 Not Found');
 

 


Сообщение отредактировал Zeppelin: 26 Апрель 2013 - 07:12

  • 2

#7 Solli

Solli World

    Пользователь

  • Пользователи
  • PipPip
  • 57 сообщений
0
Обычный

Отправлено 29 Апрель 2013 - 08:23

по этой ссылке можно проверить вывод заголовков как для разных браузеров, так и для поисковых роботов

 

Кстати, мне больше понравился вот такой совет:

 

В контроллерах продукта (catalog/controller/product/product.php), категории (catalog/controller/product/category.php), производителя (catalog/controller/product/manufacturer.php) и т.п. где это необходимо :)

 

перед


       if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/error/not_found.tpl')) {
                $this->template = $this->config->get('config_template') . '/template/error/not_found.tpl';
            } else {
                $this->template = 'default/template/error/not_found.tpl';
            }
 

 

нужно вставить

 

              $this->response->addHeader($this->request->server['SERVER_PROTOCOL'] . '/1.1 404 Not Found');
 

 

Только появляется проблема - гуглбот получает на живых страницах 404...


  • 0

#8 Zeppelin

Zeppelin World

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 673 сообщений
85
Очень хороший
  • ГородНовосибирск

Отправлено 29 Апрель 2013 - 10:23

Только появляется проблема - гуглбот получает на живых страницах 404...

 

можешь пояснить, по какой причине это может происходить?

 

ЗЫ Скормил реальную страницу с внесенными вышеописанными изменениями ГуглоБоту.

Вот какой получился выод. Съел с удовольствием и даже страничку показал :) Весь вывод приводить не стану, смысла не вижу.

 

 

Просмотреть как Googlebot

Вот как поисковый робот Googlebot просканировал вашу страницу.

URL: http://selato.ru/acc...skimi-tsiframi/

Дата: понедельник, 29 апреля 2013 г., 0:33:12 GMT-07:00

Тип робота Googlebot: Веб

Время загрузки (в миллисекундах): 743

 

Вот еще вывод инфы Тоже ГуглоБот.

 

http://www.bertal.ru...imi-tsiframi/#h

 

HTTP/1.1 200 OK
Server: nginx/0.8.55
Date: Mon, 29 Apr 2013 07:38:27 GMT
Content-Type: text/html; charset=utf-8
Connection: keep-alive
X-Powered-By: PHP/5.2.17
Set-Cookie: PHPSESSID=fac2c6b53f4a440f56b5a46b19ec5be5; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Set-Cookie: language=ru; expires=Tue, 29-Oct-2013 07:38:27 GMT; path=/
Set-Cookie: currency=RUB; expires=Tue, 29-Oct-2013 07:38:27 GMT; path=/
Set-Cookie: personalRecentlyViewed=144; expires=Wed, 29-May-2013 07:38:27 GMT; path=/; domain=selato.ru
Content-Language: ru-RU

 

Причин для твоих сомнений я не вижу


  • 0

#9 Solli

Solli World

    Пользователь

  • Пользователи
  • PipPip
  • 57 сообщений
0
Обычный

Отправлено 07 Май 2013 - 02:13

Ок - скорее всего причина в чем то другом - но если я закомментил эти строки в контроллерах - то все стало индексироваться. 

Где то есть косяк пока что грешу на shoppica2(о да я вляпался в этот "замечательный" шаблон)...


  • 0

#10 Freelab

Freelab World

    Пользователь

  • Пользователи
  • PipPip
  • 87 сообщений
4
Обычный
  • ГородМосква

Отправлено 24 Июль 2013 - 07:01

Обращаем ваше внимание на то, что этот вариант нежелательно использовать, так как посылать заголовок из шаблона, мягко говоря, неправильно.
Позже опубликуем тут самое корректное решение.

 

Здравствуйте, а подскажите корректного решения не нашли еще?


  • 0

#11 rb2

rb2 World

    Продвинутый пользователь

  • Ветеран сообщества
  • PipPipPip
  • 2 095 сообщений
348
Очень хороший

Отправлено 26 Июль 2013 - 11:16

Корректное написано в #6, @Zeppelin. Полный список файлов для 1.5.1.3 публиковался у меня в блоге - выдача http/404 вместо 200 для товаров, отключенных администратором. Для других версий всё то же самое - состав файлов будет либо точно такой же, либо с минимальными изменениями.

Ещё более правильным было бы отдавать этот заголовок в мнэ-э-э... "более едином" месте, что ли. Чтобы не вносить этот заголовок в десятке мест, а регулировать в одном (common/not_found.php, common/not_found.tpl). По этой причине Даниэль когда-то отфутболил этот патч, и до сих пор уже года 2 отдаётся 200 вместо 404.

Логичным был бы редирект на 404 страницу. Сейчас лишь включается tpl от 404 страницы, а контроллер не отрабатывает (если я правильно понимаю) - потому и не видно правильного заголовка.
  • 1

#12 DDoc

DDoc World

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 216 сообщений
1
Обычный

Отправлено 14 Декабрь 2013 - 01:36

Корректное написано в #6, @Zeppelin. Полный список файлов для 1.5.1.3 публиковался у меня в блоге - выдача http/404 вместо 200 для товаров, отключенных администратором. Для других версий всё то же самое - состав файлов будет либо точно такой же, либо с минимальными изменениями.

Ещё более правильным было бы отдавать этот заголовок в мнэ-э-э... "более едином" месте, что ли. Чтобы не вносить этот заголовок в десятке мест, а регулировать в одном (common/not_found.php, common/not_found.tpl). По этой причине Даниэль когда-то отфутболил этот патч, и до сих пор уже года 2 отдаётся 200 вместо 404.

Логичным был бы редирект на 404 страницу. Сейчас лишь включается tpl от 404 страницы, а контроллер не отрабатывает (если я правильно понимаю) - потому и не видно правильного заголовка.

 

Здравствуйте!
У меня проблема такая: при нажатии в блоке Категории на ссылку Комплектующие, если это происходит на хостинге, то вылетает сообщение

1)

Error occurred: 404 - not found

Apache Server ....при этом в адресной строке http://site.ru/desktops
 
2) если на локальном проделать тоже самое, то открывается страница XAMPP (аналог Денвера) и в адресной строке адрес XAMPP
 
Честно говоря, не совсем понимаю относится ли описание проблемы в данной ветке форума к моей тоже
Попадает ли моя проблема под это описание?

  • 0

#13 Einshtein

Einshtein World

    Coder

  • Пользователи
  • PipPipPip
  • 2 620 сообщений
627
Очень хороший
  • ГородКиев

Отправлено 14 Декабрь 2013 - 01:37

поисковику пофигу что там в адрессной строке - он обробатывает ответ сервера и заголовок

PS а то что у Вас не работает чпу - это проблема htaccess скорее всего...переименуйте его в .htaccess
и прочитайте вот эту ветку: тык


  • 1

#14 DDoc

DDoc World

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 216 сообщений
1
Обычный

Отправлено 14 Декабрь 2013 - 01:59

 

поисковику пофигу что там в адрессной строке - он обробатывает ответ сервера и заголовок

PS а то что у Вас не работает чпу - это проблема htaccess скорее всего...переименуйте его в .htaccess
и прочитайте вот эту ветку: тык

 .htaccess переименован

 

может ли это быть связано с последствиями установки некоторых модулей seo???

 

Кстати, такое происходит со всеми ссылками на продукты Apple


  • 0




Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных