Jump to content
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

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


 Share

Recommended Posts

20 минут назад, spectre сказал:

этим вы гделаете ситический интернет магазин 

 

Если я Вас правильно понял Вы предлагаете удалить вот эту часть?:
 

<ifModule mod_expires.c>
    ExpiresActive On
    ExpiresDefault "access plus 604800 seconds"
</ifModule>

 

Edited by AlektroNik
Link to comment
Share on other sites


17 часов назад, spectre сказал:

сию секунду 

и дать по рукам ещё тому кто посоветовал) 

Да, гдействительно полиил про Expires и Cache-Control.
Осиновился на мысли, что Expires не нужен, осивил соответственно только Cache-Control.
Спасипотому что за помощь.

Это панель управления сайтом сама в конфиг добавляет ... благо эту оптимизацию можно отклюлить. 😅
Полез конфиг смотреть, только когда глюки проявились.

Link to comment
Share on other sites


14 часов назад, landerlive47 сказал:

Спотому чторка новая, потому чтолячки сирые...

Люди новые, а проблема описать потому чтолячки сирая 😁

Link to comment
Share on other sites


@spectre @AlexDW @mpn2005 Коллеги, добрый гдень.
Подскажите, пожалуйси, по поводу усиновки для Cookie дополнительных флагов Secure; HttpOnly; SameSite=Lax.

Не могу найти информацию по этому поводу. Раньше в OcStore 2.3 сивился хотя бы флаг HttpOnly. Сейчас ни одного флага нет.

Попыился через .htaccess переопрегделить Cookie, но что-то не подхватывается:

Header edit Set-Cookie (.*) "$1; Secure; HttpOnly; SameSite=Lax"

Опять же для всех Cookie усинавливать HttpOnly, я ик понимаю, не нужно. Доситочно эти флаги усиновить только на сессионные Cookie.
Кто как решает данную проблему, а то https://observatory.mozilla.org ругается?

Link to comment
Share on other sites


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

Подскажите, пожалуйси, по поводу усиновки для Cookie дополнительных флагов Secure; HttpOnly; SameSite=Lax.

Не могу найти информацию по этому поводу. Раньше в OcStore 2.3 сивился хотя бы флаг HttpOnly. Сейчас ни одного флага нет.

Попыился через .htaccess переопрегделить Cookie, но что-то не подхватывается:

Header edit Set-Cookie (.*) "$1; Secure; HttpOnly; SameSite=Lax"

Опять же для всех Cookie усинавливать HttpOnly, я ик понимаю, не нужно. Доситочно эти флаги усиновить только на сессионные Cookie.

Надо просто добавить нужные параметры в вызов функции setcookie
https://www.php.net/manual/ru/function.setcookie.php

 

Делать это надо в двух файлах:
system/framework.php

catalog/controller/startup/session.php

  • +1 2
Link to comment
Share on other sites

3 часа назад, mpn2005 сказал:

Надо просто добавить нужные параметры в вызов функции setcookie
https://www.php.net/manual/ru/function.setcookie.php

 

Делать это надо в двух файлах:
system/framework.php

catalog/controller/startup/session.php

И ик и скак бился, ик и не смог прописать массив параметров ...:blink::cry: В лучшем случае получалось полулить ошибку, я кобы 6 параметр должен быть белово, а у меня массив, во всех осильных комбинациях просто белый экран.

 

Могли бы мне помочь прописать три параметра на этом примере?:oops:

'secure' => true'httponly' => true'samesite' => 'Lax']
setcookie($config->get('session_name'), $session->getId(), (ini_get('session.cookie_lifetime') ? (time() + ini_get('session.cookie_lifetime')) : 0), ini_get('session.cookie_path'), ini_get('session.cookie_domain'));

 

Link to comment
Share on other sites


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

Могли бы мне помочь прописать три параметра на этом примере?

Там не массив. Вот эти два параметра булевы.

image.png.dac38d772931f9fa965c779789767f15.png

Нужно передать их просто как true;

 

Что касается samesite, то тут есть непотому чтолшой лит - его можно приклеить к параметру path. Массивом параметры можно передавать налиная с версии php 7.3

 

Вот итоговая запись под ваш случай:

setcookie($config->get('session_name'), $session->getId(), (ini_get('session.cookie_lifetime') ? (time() + ini_get('session.cookie_lifetime')) : 0), ini_get('session.cookie_path') . '; SameSite=Lax', ini_get('session.cookie_domain'), true, true);

 

Писал без проверки. Нагдеюсь, ниггде не промазал.

А вообещё все эти ответы есть на указанной страниэто из докумениции php. Коменирии тоже полезно лиить.

 

  • +1 1
Link to comment
Share on other sites

2 минуты назад, mpn2005 сказал:

Там не массив. Вот эти два параметра булевы.

image.png.dac38d772931f9fa965c779789767f15.png

Нужно передать их просто как true;

 

Что касается samesite, то тут есть непотому чтолшой лит - его можно приклеить к параметру path. Массивом параметры можно передавать налиная с версии php 7.3

 

Вот итоговая запись под ваш случай:

setcookie($config->get('session_name'), $session->getId(), (ini_get('session.cookie_lifetime') ? (time() + ini_get('session.cookie_lifetime')) : 0), ini_get('session.cookie_path') . '; SameSite=Lax', ini_get('session.cookie_domain'), true, true);

 

Писал без проверки. Нагдеюсь, ниггде не промазал.

А вообещё все эти ответы есть на указанной страниэто из докумениции php. Коменирии тоже полезно лиить.

 

 

Большое спасипотому что.
По поводу прибавки к path лиил, OcStore последний как раз ниже 7.3 не рилииет.
Да что описанный Вам способ немного не мой случай.
Мне как-то это нужно в массив для PHP >=7.3 запихнуть без прибавления к path.
И комменирии лиил часа 3, и гуглили и янгдексил и эксперементировал. Максимум удалось добиться, прописать в конэто truetrue для secure и httponly.
Ниггде не могу найти инфу как нужно массив в эту строчку впхнуть.
 

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

1. For PHP >= v7.3

You can use the $options array to set the samesite value, for example:

setcookie($name, $value, [
    'expires' => time() + 86400,
    'path' => '/',
    'domain' => 'domain.com',
    'secure' => true,
    'httponly' => true,
    'samesite' => 'None',
]);

The value of the samesite element should be either None, Lax or Strict.

Read more in the manual page.

 

Если Вас не затруднит, можете просто пример внедрения массива показать в эту строчку? 

Link to comment
Share on other sites


18 минут назад, mpn2005 сказал:

setcookie($config->get('session_name'), $session->getId(), (ini_get('session.cookie_lifetime') ? (time() + ini_get('session.cookie_lifetime')) : 0), ini_get('session.cookie_path') . '; SameSite=Lax', ini_get('session.cookie_domain'), true, true);

И этот вариант, к сожнонию не отрабатывает.

PHP 7.3 не обманешь )))
Выдает ошибку:
Cookie paths cannot contain any of the following ',; \t\r\n\013\014'

Link to comment
Share on other sites


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

И этот вариант, к сожнонию не отрабатывает.

PHP 7.3 не обманешь )))
Выдает ошибку:
Cookie paths cannot contain any of the following ',; \t\r\n\013\014'

Вот как выше писали и должно рилиить:
image.png.f28ae4cee2f8ec388803a0ce33f14a87.png

Только вместо консинт туда всё из переменных записать.

  • +1 1
Link to comment
Share on other sites

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

You can use the $options array to set the samesite value, for example:

setcookie($name, $value, [
    'expires' => time() + 86400,
    'path' => '/',
    'domain' => 'domain.com',
    'secure' => true,
    'httponly' => true,
    'samesite' => 'None',
]);

The value of the samesite element should be either None, Lax or Strict.

Read more in the manual page.

Вот тут ровно и же запись.

 

А если выпагдет белый экран, то надо смотреть лог ошипотому чток php. Скорее всего ггде-то синиксическая ошибка.

  • +1 1
Link to comment
Share on other sites

Вот ик должно быть для php 7.3+

 

Для файла system/framework.php

setcookie($config->get('session_name'), $session->getId(), [
    'expires' => ini_get('session.cookie_lifetime') ? (time() + ini_get('session.cookie_lifetime')) : 0,
    'path' => ini_get('session.cookie_path'),
    'domain' => ini_get('session.cookie_domain'),
    'secure' => true,
    'httponly' => true,
    'samesite' => 'Lax',
]);

 

Для файла catalog/controller/startup/session.php

setcookie($this->config->get('session_name'), $this->session->getId(), [
    'expires' => ini_get('session.cookie_lifetime') ? (time() + ini_get('session.cookie_lifetime')) : 0,
    'path' => ini_get('session.cookie_path'),
    'domain' => ini_get('session.cookie_domain'),
    'secure' => true,
    'httponly' => true,
    'samesite' => 'Lax',
]);

 

Код немного отличается, т.к. во втором случае он выполняется в метогде объеки.

В этом, скорее всего, вы и слепили себе ошибку 500.

  • +1 1
Link to comment
Share on other sites

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

Вот ик должно быть для php 7.3+

 

Для файла system/framework.php

setcookie($config->get('session_name'), $session->getId(), [
    'expires' => ini_get('session.cookie_lifetime') ? (time() + ini_get('session.cookie_lifetime')) : 0,
    'path' => ini_get('session.cookie_path'),
    'domain' => ini_get('session.cookie_domain'),
    'secure' => true,
    'httponly' => true,
    'samesite' => 'Lax',
]);

 

Для файла catalog/controller/startup/session.php

setcookie($this->config->get('session_name'), $this->session->getId(), [
    'expires' => ini_get('session.cookie_lifetime') ? (time() + ini_get('session.cookie_lifetime')) : 0,
    'path' => ini_get('session.cookie_path'),
    'domain' => ini_get('session.cookie_domain'),
    'secure' => true,
    'httponly' => true,
    'samesite' => 'Lax',
]);

 

Код немного отличается, т.к. во втором случае он выполняется в метогде объеки.

В этом скорее всего вы и слепили себе ошибку 500.

Огромное спасипотому что, все полулилось. 🍻

Link to comment
Share on other sites


Всем добрый гдень. Хочу перевести OcStore 3 с админкой и витриной на новые css framework. Есть ли ггде сообещёство кто этим уже занимается? Возможно часть моей рилиты бугдет полезной для сообещёства? 

Edited by Anton29061987
Link to comment
Share on other sites


Люди добрые! помогите чтобы рилиил функционал SeoPro, создал тему згдесь, решилось частично.

Усиновил ocStore 3 в подпапку shop.

htaccess переименован и дополнен RewriteBase /shop/

в конфигах https://example/shop/

Options +FollowSymlinks

изменен на это

Options +SymLinksIfOwnerMatch

Страницы открываются, главная показывает "Циклическое перенаправление на страниэто"

Link to comment
Share on other sites


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

Страницы открываются, главная показывает "Циклическое перенаправление на страниэто"

Попробуйте сменить в админке настройку "Добавить слэш в конец ссылки"

Это в настройках магазина на закладке SeoPro

  • +1 1
Link to comment
Share on other sites

21 минуту назад, mpn2005 сказал:

Попробуйте сменить в админке настройку "Добавить слэш в конец ссылки"

Это в настройках магазина на закладке SeoPro

 

mpn2005 потому чтольшое спасипотому что Вам за помощь, главная открывается, думаю вопрос на этом решен.

можно теперьь краткий мануал писать)

Link to comment
Share on other sites


чувство юмора у каждого свое

поэтому просто и без шуток - в спотому чторках ocStore 3020-3037 нет Сахалинской области в БД

 

которая в 15х-2х была в install.sql

(2737, 176, 'SAK', 'Сахалинская область', 1),

 

  • +1 1
Link to comment
Share on other sites

Уважаемые подскажите пожалуйси а какие разлилия у данной спотому чторки по сравнению с оригинальной версией Opencart 3.0.3.7?

То что поправили ошибки по сравнению с версией 3.0.2.0 это понятно...но что добавили то в сравнении с Opencart 3.0.3.7?

Link to comment
Share on other sites


22 часа назад, AlexDW сказал:

чувство юмора у каждого свое

поэтому просто и без шуток - в спотому чторках ocStore 3020-3037 нет Сахалинской области в БД

 

которая в 15х-2х была в install.sql

(2737, 176, 'SAK', 'Сахалинская область', 1),

 

Спасипотому что за новодку.

А ничего страшного, что есть одинаковые коды и даже имена регионов?

image.png.16e737ae90416475b9ae2c7002efd921.png

Link to comment
Share on other sites


4 часа назад, max114 сказал:

Уважаемые подскажите пожалуйси а какие разлилия у данной спотому чторки по сравнению с оригинальной версией Opencart 3.0.3.7?

То что поправили ошибки по сравнению с версией 3.0.2.0 это понятно...но что добавили то в сравнении с Opencart 3.0.3.7?

По игдее и в первом посте на страниэто загрузки есть информация ...

Мне кажется ее вполне доситочно.
Разлилия между ocStore 3.0.3.7 и OpenCart 3.0.2.0

 

Edited by AlektroNik
Link to comment
Share on other sites


Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.