Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

ocStore 3.0.3.7 - Модифицированный OpenCart


Recommended Posts

1 час назад, rvv2vvr сказал:

Здравствуйте. Подскажите пожалуйста как исправить.

 

HTTPS настроить по-человечески. А потом принудительно страницу в браузере обновить (ctrl или shift)+F5

Надіслати
Поділитися на інших сайтах


В 10.07.2021 в 21:01, AlexL78 сказал:

Установил снова с нуля, только теперь на тестовый домен, все равно та же ошибка. Чего там не хватает в 206 строке понять не могу, я не разработчик. Если есть мысли, поделитесь пожалуйста.

Перезалит архив с исправленой ошибкой

  • +1 2
Надіслати
Поділитися на інших сайтах


1 час назад, dinox сказал:

Перезалит архив с исправленой ошибкой

версия opencart 3.0.3.8 вышла, ocstore 3.0.3.8 ожидать в ближайшее время?

 https://github.com/opencart/opencart/releases

Змінено користувачем zhu4koff
Надіслати
Поділитися на інших сайтах


10 часов назад, Shureg сказал:

HTTPS настроить по-человечески. А потом принудительно страницу в браузере обновить (ctrl или shift)+F5

Спасибо. Не помогло.

Змінено користувачем rvv2vvr
Надіслати
Поділитися на інших сайтах


8 минут назад, rvv2vvr сказал:

Помогла переустановка

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

define('DIR_IMAGE'
Надіслати
Поділитися на інших сайтах


В 26.08.2021 в 20:35, zhu4koff сказал:

версия opencart 3.0.3.8 вышла, ocstore 3.0.3.8 ожидать в ближайшее время?

 https://github.com/opencart/opencart/releases

Какой то бред

Главное это не версия а стабильность

Надіслати
Поділитися на інших сайтах


  • 2 weeks later...

У кого хостер ругается на нагрузку и бывают тормоза при работе сайта возможно вам будет полезен мой запрос на изменения: https://github.com/ocStore/ocStore/pull/70

 

Коротко говоря, проблема вновь с очистками кэша сессий, это просто бич 3х версии.

 

Грубо говоря в файле:

/system/library/session/db.php

 

ищем строчку:

$this->gc();

 

И меняем на:

 

		# ClearSessionDB START #			
		if (date("N") == 7 && date("G") == 3)
		{ // Clear Sessions only: Sunday, 3 AM
			$this->db->query("DELETE FROM `" . DB_PREFIX . "session` WHERE expire < DATE_SUB(NOW(), INTERVAL 7 DAY);");
		}
		# ClearSessionDB END #

 

 

 

 

Надіслати
Поділитися на інших сайтах


23 minutes ago, nikifalex said:

 

а может проблема просто в том что нет индекса по expire?

 

И это тоже.


вот действительно годное решение (рабочий механизм gc в конструкторе с учетом настроек окружения/php, ответственных за частоту срабатывания)

https://github.com/opencart/opencart/blob/3.0.x.x_Maintenance/upload/system/library/session/db.php

Надіслати
Поділитися на інших сайтах

2 часа назад, LEOnidUKG сказал:

if (date("N") == 7 && date("G") == 3)

В целом идея управлять когда именно запускать очистку базы мне понравилась.
Но непосредственно с нагрузкой по очистке я не сталкивался. Проходимость не такая большая.

Но зато Вам может помочь избавиться от записи ненужных сессиий

 

А вот тут я выложил готовый рабочий модификатор на эту тему.

 

 

 

  • +1 1
Надіслати
Поділитися на інших сайтах


5 часов назад, nikifalex сказал:

а может проблема просто в том что нет индекса по expire?

Я профессионально занимаюсь оптимизацией сайтов, У меня есть 677 индексов для Opencart практически на все случаи жизни и популярные плагины. Поэтому проблема не в этом.

Змінено користувачем LEOnidUKG
Надіслати
Поділитися на інших сайтах


5 часов назад, 100napb сказал:

И это тоже.


вот действительно годное решение (рабочий механизм gc в конструкторе с учетом настроек окружения/php, ответственных за частоту срабатывания)

https://github.com/opencart/opencart/blob/3.0.x.x_Maintenance/upload/system/library/session/db.php

И чем оно отличается от текущего?

https://github.com/ocStore/ocStore/blob/v3.0.3.7/upload/system/library/session/db.php

 

Всё тоже самое, долбёжка БД через раз на удаление сессий.

Надіслати
Поділитися на інших сайтах


3 минуты назад, nikifalex сказал:

 

 

Там и дайте уже четкий совет. вас не смущает отсутствие индекса?

Из коробки? Так там вообще практически нет индексов. Никто не заморачивается по этому поводу из разработчиков. Если делать Pull это надо разбирать полностью чистый магазин, у меня увы его нет. У меня скрипт расставляет индексы автоматически везде, где можно если их нет.

Змінено користувачем LEOnidUKG
Надіслати
Поділитися на інших сайтах


2 hours ago, LEOnidUKG said:

Всё тоже самое, долбёжка БД через раз на удаление сессий.

там опечатка\ошибка была. в репозитории OCStore она осталась. Из-за этого gc срабатывает при каждом запросе страницы. После исправления работает аналогично коробочному механизму php по очистке протухших сессий и гибко настраивается. На мой взгляд, это лучшее решение детской болячки с сессиями в базе для ОС 3.* на текущий день.


 

Spoiler

 

if (mt_rand() / mt_getrandmax() > $gc_probability / $gc_divisor) {

vs

if (mt_rand() / mt_getrandmax() < $gc_probability / $gc_divisor) {

 

 

Надіслати
Поділитися на інших сайтах

17 минут назад, 100napb сказал:

там опечатка\ошибка была. в репозитории OCStore она осталась. Из-за этого gc срабатывает при каждом запросе страницы. После исправления работает аналогично коробочному механизму php по очистке протухших сессий и гибко настраивается. На мой взгляд, это лучшее решение детской болячки с сессиями в базе для ОС 3.* на текущий день.


 

  Скрыть контент

 

if (mt_rand() / mt_getrandmax() > $gc_probability / $gc_divisor) {

vs

if (mt_rand() / mt_getrandmax() < $gc_probability / $gc_divisor) {

 

 

да, действительно, трудно заметить разницу.

 

Но опять же, в 3.0.3.8 версии:

https://github.com/opencart/opencart/blob/master/upload/system/library/session/db.php

Убрали очистку автоматическую и код самой очистки поменяли. Опять что-то пошло у них не так.

Змінено користувачем LEOnidUKG
Надіслати
Поділитися на інших сайтах


9 часов назад, mseo сказал:

А куда пропал колокол с уведомлениями?

В демке тоже нету

остался в движках 2х, в "тройке" его и не было

если нужен - ищите дополнения, добавляющие его в 3х

типа такого

https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=36359

Надіслати
Поділитися на інших сайтах

Как правильно вернуть только раздел extension\advertise?
В версии ocStore 3.0.2.0 его вырезали, а в ocStore 3.0.3.0 вернули. Вроде все по отдельности закинул, модуль появился (Реклама), в правах доступы выставлены - но все равно доступ запрещен. Как и где можно прописать еще права доступа к этому разделу?

Надіслати
Поділитися на інших сайтах


В 10.08.2021 в 21:41, mpn2005 сказал:

Вот таким вот кодом можно избавиться от записи ненужных сессиий.

 

В файле system/library/session/db.php

После строки:


$this->db = $registry->get('db');

Добавить:


$this->config = $registry->get('config');

 

И в функции write после строки:


if ($session_id) {

Добавить вот это:


$session_empty = true;

foreach ($data as $key => $value) {
    if ($key == 'language' && $value == $this->config->get('config_language')) {
        continue;
    }
    if ($key == 'currency' && $value == $this->config->get('config_currency')) {
        continue;
    }
    $session_empty = false;
    break;
}

if ($session_empty) {
    return true;
}

 

Таким образом, если в сессии будут данные, отличные от данных по умолчанию, то она будет записана в БД. Иначе запись не производится.

Непонятно, почему вообще этому моменту не уделили изначально должного внимания. Тем более, что либа сессий OC3 изначально из коробки кривая.

 

Заметил ошибку в Журнале ошибок oCstore:

PHP Warning:  Invalid argument supplied for foreach() in /domain.ru/storage/modification/system/library/session/db.php on line 35

Можете подсказать что ему не нравится?

image.thumb.png.84a905c4b511956bffb64e05080e1654.png

Надіслати
Поділитися на інших сайтах


49 минут назад, AlektroNik сказал:

 

Заметил ошибку в Журнале ошибок oCstore:

PHP Warning:  Invalid argument supplied for foreach() in /domain.ru/storage/modification/system/library/session/db.php on line 35

Можете подсказать что ему не нравится?

image.thumb.png.84a905c4b511956bffb64e05080e1654.png

Перед строкой 
 

foreach ($data as $key => $value) {

Добавить:
 

if (empty($data)) {
	return true;
}

 

  • +1 1
Надіслати
Поділитися на інших сайтах

Столкнулся с ошибкой SEO PRO в OCstore 3.0.3.7:

После изменения или удаления SEO URL в любом товаре и переходе на него через админку (нажав глазик), либо по ID ссылке (типа site.ru/index.php?route=product/product&product_id=42),  ссылка ведёт на старый SEO URL который был при создании товара и получаем Запрашиваемая страница не найдена!

Проверил на рабочем сайте + перепроверил на локалке на чистом OCstore  без модулей.

Змінено користувачем EagleBLR
Надіслати
Поділитися на інших сайтах


2 часа назад, EagleBLR сказал:

Столкнулся с ошибкой SEO PRO в OCstore 3.0.3.7:

После изменения или удаления SEO URL в любом товаре и переходе на него через админку (нажав глазик), либо по ID ссылке (типа site.ru/index.php?route=product/product&product_id=42),  ссылка ведёт на старый SEO URL который был при создании товара и получаем Запрашиваемая страница не найдена!

Проверил на рабочем сайте + перепроверил на локалке на чистом OCstore  без модулей.

После изменений чистите системный кэш, если включено кэширование в настройках SeoPro.

А так вообще и браузеры умеют редиректы кэшировать. Просто не нужно дёргать то, что дёргать не стоит.

 

Надіслати
Поділитися на інших сайтах

В 25.08.2021 в 08:12, AlektroNik сказал:

Нет и делать это не рекомендуется. Уже неоднократно обсуждалось в этой теме.

а как подлотать сеопро на ocStore 3.0.2.0

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.