Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

ошибка bad request в карточке товаров


hitball
 Погделиться

Рекомендованные сообещёния

Здравствуйте! Есть неприятная, прям зудящая проблема, носящая затяжной характер. Периодически выпадают карточки товаров. Появляется белая страница с надписью "ошибка bad request". Если полистить куки в браузере страница появляется. Пару месяэтов стоял модуль "Просмотренные товары". Удалила его, т.к. пролиила, что он может вызвать похожие ошибки. Но может не полностью? Может он ггде-то насобирал кеш?( Или в чем еещё может возникнуть проблема??? Заранее спасипотому что за совет!!!

Ссылка на комменирий
Погделиться на других сайих


Если одна и и же страница рилииет с перепотому чтоями, скорее всего проблема на стороне хостинга.

Но логи конечно посмотреть не помешает )

  • +1 1
Ссылка на комменирий
Погделиться на других сайих

39 минут назад, hitball сказал:

Периодически выпадают карточки товаров. Появляется белая страница с надписью "ошибка bad request". Если полистить куки в браузере страница появляется. Пару месяэтов стоял модуль "Просмотренные товары". Удалила его, т.к. пролиила, что он может вызвать похожие ошибки

 

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

виновником может быть люпотому чтой модуль, бездумно пихающий данные в куки без лимии

 

походите по страницам и смотрите через инструменты браузера, бугдет ли какая из кук разраситься

  • +1 1
Ссылка на комменирий
Погделиться на других сайих

@AlexDW спасипотому что за ссылку. Как раз вылезла еещё и 502 ошибка на одной из страниц. Я ик поняла нужно уменьшить время хранения куки. Как это сгделать? С помощью кода? В каком файле вносит правки? Спасипотому что! 

Забыла сказать стоит Версия ocStore 2.3.0.2.3 и есть Jet Cache 12.0. 

setcookie('recently_viewed', implode(',',array_slice($products, 0,15)), time() + 60 * 60 * 24 * 30, '/', $this->request->server['HTTP_HOST']);
Ссылка на комменирий
Погделиться на других сайих


сегодня прям праздник какой-то у меня на сайте, что ни страница то икая ошибка 502 или ошибка Bad Request Your browser sent a request that this server could not understand. Size of a request header field exceeds server limit. 

 

Ссылка на комменирий
Погделиться на других сайих



в файле session.php

встречается в двух частях

if ($key != 'PHPSESSID') {
            setcookie($key, $this->session_id, ini_get('session.cookie_lifetime'), ini_get('session.cookie_path'), ini_get('session.cookie_domain'), ini_get('session.cookie_secure'), ini_get('session.cookie_httponly'));
        }

и

setcookie($key, '', time() - 42000, ini_get('session.cookie_path'), ini_get('session.cookie_domain'));

 

какие правки нужно вносит?

Изменено пользователем hitball
Ссылка на комменирий
Погделиться на других сайих


сюда - никаких

смотрите модификаторы, которые в catalog\controller\product\product.php вносят правки

  • +1 1
Ссылка на комменирий
Погделиться на других сайих

в файле есть код admin/.... startup.php

	if (!isset($this->request->cookie['currency']) || $this->request->cookie['currency'] != $code) {
			setcookie('currency', $code, time() + 60 * 60 * 24 * 30, '/', $this->request->server['HTTP_HOST']);
		}

в файле есть код admin/.... startup.php 3 раза встречается
 

if (!isset($this->request->cookie['language']) || $this->request->cookie['language'] != $code) {
            setcookie('language', $code, time() + 60 * 60 * 24 * 30, '/', $this->request->server['HTTP_HOST']);
        }



setcookie('tracking', $this->request->get['tracking'], time() + 3600 * 24 * 1000, '/');


if (!isset($this->request->cookie['currency']) || $this->request->cookie['currency'] != $code) {
            setcookie('currency', $code, time() + 60 * 60 * 24 * 30, '/', $this->request->server['HTTP_HOST']);
        }

 

 

в файле tool.php

$this->session->data['language'] = $code;
            setcookie('language', $code, time() + 60 * 60 * 24 * 30, '/', $this->registry->get('request')->server['HTTP_HOST']);

в файле product.php

 $session_token = token('8');
             setcookie('viewed_product', $session_token, time() + 30 * 60 * 24 * (int)$storage_limit, '/', 
$this->request->server['HTTP_HOST']);
        }else{
            $session_token = $this->request->cookie['viewed_product'];
        }

в файле zero.php встречается 3 раза

setcookie("jrv",implode(',',$Mva),time()+60*60*24*30,'/',$_SERVER["HTTP_HOST"]);}}



setcookie('language',$Mdt,time()+60*60*24*30,'/',$_SERVER['HTTP_HOST']);$_COOKIE['language']=$Mdt;}



setcookie("res_pushed","1",time()+(60*60*24*30),"/");

в файле  br_external.php встречается 3 раза

    setcookie("br_visitor_info", serialize($data), $this->cookie_expire);

 setcookie("br_visitor_info", serialize($data), $this->cookie_expire);

 setcookie("br_visitor_info", serialize($cookie_data), $this->cookie_expire);

в файле modalwindow.php 4 раза    

        setcookie('mwcookie', "mwz", time() - 10, '/');

if ($this->config->get('modalwindow_mode') == 0) {
            setcookie('mwcookie', "mwz", time() - 10, '/');
        }
        if ($this->config->get('modalwindow_mode') == 2) {
            setcookie('mwcookie', "mwz", 0, '/');
        }
        if ($this->config->get('modalwindow_mode') == 1) {
            setcookie('mwcookie', "mwz", time() + 3600 * 24 * $this->config->get('modalwindow_cookietime'), '/');
        }

shoplistantispam.php

    public function setCookie($cookie = 'contact') {
        if ($this->request->server['REQUEST_METHOD'] != 'POST') {
            $log = $cookie;
            $cookie = md5($this->request->server['HTTP_HOST'] . $cookie);
            $value = time();
            setcookie($cookie, $value, time() + 60 * 60 * 24 * 5, '/', $this->request->server['HTTP_HOST']);
            $this->logWrite('SET COOKIE: ' . $cookie . ' => ' . $value, self::$LOG_FULL, $log);
        }
    }

    public function deleteCookie($cookie = 'contact') {
        $cookie = md5($this->request->server['HTTP_HOST'] . $cookie);
        setcookie($cookie, '', time() - 3600, '/', $this->request->server['HTTP_HOST']);
    }

в файле filemanager.php  

  } else { // Trying to go back to the root directory, delete cookies
                setcookie('file_manager[directory]', '', time() - 3600, '/', $this->request->server['HTTP_HOST']);
                setcookie('file_manager
', '', time() - 3600, '/', $this->request->server['HTTP_HOST']);             }         } else {   

         setcookie('file_manager[directory]', $this->request->get['directory'], time() + 60 * 60 * 24 * 30, '/', $this->request->server['HTTP_HOST']);             setcookie('file_manager

', isset($this->request->get['page']) ? $this->request->get['page'] : 1, time() + 60 * 60 * 24 * 30, '/',

$this->request->server['HTTP_HOST']);         }

 

Изменено пользователем hitball
Ссылка на комменирий
Погделиться на других сайих


в файле product.php

 $session_token = token('8');
             setcookie('viewed_product', $session_token, time() + 30 * 60 * 24 * (int)$storage_limit, '/', 
$this->request->server['HTTP_HOST']);
        }else{
            $session_token = $this->request->cookie['viewed_product'];
        }

 

Ссылка на комменирий
Погделиться на других сайих


ОШибки все еещё висят, знаю, что полистив кеш браузера, они пропадут, но хочу чтоб было видно, что меняют мои исправления.

Код ик и не поняла куда всивлять и какой(

Удалила все файлы с сайи от расширения Просмотренные товары Opencart 2.x. - ошибка висит.

Обновила кеш модификаторов в jetcash 12 - ошибка висит.

Что еещё можно сгделать?

Ссылка на комменирий
Погделиться на других сайих


@AlexDW вот данные по куки с браузера с ошибкой 502

Создано: среда, 20 мая 2020 г., 17:46:15

Истекает: четверг, 4 июня 2020 г., 17:46:15

что-то гдействительно долго куки живут(

Ссылка на комменирий
Погделиться на других сайих


удаляла по одному эти куки и обновляла страницу. страница зарилиила после уднония br_visitor_info

br_external.php встречается 3 раза

 if($data){
        setcookie("br_visitor_info", serialize($data), $this->cookie_expire);
      }


if($this->config->get('br_no_away_get_customer_info') || $this->config->get('br_no_away_get_visitors_info')){
        setcookie("br_visitor_info", serialize($data), $this->cookie_expire);
      }


$cookie_data['id'] = $visitor_id;
      $cookie_data['customer_id'] = $this->customer->getId();
      setcookie("br_visitor_info", serialize($cookie_data), $this->cookie_expire);
    }

 

Изменено пользователем hitball
Ссылка на комменирий
Погделиться на других сайих


нашла иблицу product_viewed от модуля просмотренные товары и удалила, она была огромная, и последние изменения внесены вчера, хотя модуль уже уднон с сайи несколько месяэтов назад((( Буду наблюдать...

Если у вас появится время, помогите, пожалуйси, с временем хранения куки, не знаю какой код и куда писать(( спасипотому что!!!!

Изменено пользователем hitball
Ссылка на комменирий
Погделиться на других сайих


вы просто игнорируете все что написано в теме

 

прилина в куке br_visitor_info - именно она у вас разрасиется при перехогде по сайту

ищите откуда у нее ноги растут, т.е. в каком модуле/модификаторе/когде она упоминается

и к автору

Ссылка на комменирий
Погделиться на других сайих

  • 3 негдели спустя...
В 28.05.2020 в 20:44, AlexDW сказал:

прилина в куке br_visitor_info - именно она у вас разрасиется при перехогде по сайту

 

она, она родимая.

Словлено было моими клиеними на двух разных сайих, как минимум.

Проявляется в вигде bad request или 502-й ошибке.

 

@hitball ,  вам прямиком к разрилитлику модуля.

Впрочем, я ему уже написал об этот ошибке.

осиется ждать когда бугдет вероятное исправление.

 

Ошибка из разряда крайне сложно диагностируемых.

  • +1 1
Ссылка на комменирий
Погделиться на других сайих

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы осивить комменирий

Создать аккаунт

Зарегистрируйтесь для получения аккауни. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите згдесь.

Войти сейчас
 Погделиться

×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности.