Билинг - после успешной оплаты пользователь выпадает из учетной записи

InstantCMS 2.X
#16 16 января 2022 в 17:23

Сайт доступен по http и https? Не может быть такого, что авторизован юзер на https, редиректит на http, а у кук стоит флаг secure?

p.s. я не автор биллинга если что

Fuze

Доступен по https. В .htaccess прописан редирект с http на https

#17 16 января 2022 в 17:40

Залез в БД в таблицу cms_users и увидел что после покупки подписки пользователю было присвоено две группы — премиум и гость.

endorfin86

Видимо в этом и проблема тогда, поскольку сессионная кука слетать не может просто так. Полагаю такая проблема после оплаты только подписки. При других типах оплат не выкидывает, верно?

#18 16 января 2022 в 17:53

Залез в БД в таблицу cms_users и увидел что после покупки подписки пользователю было присвоено две группы — премиум и гость.

endorfin86

Видимо в этом и проблема тогда, поскольку сессионная кука слетать не может просто так. Полагаю такая проблема после оплаты только подписки. При других типах оплат не выкидывает, верно?

Fuze

СИТУАЦИЯ ПЕРВАЯ (ОПЛАТА КОНТЕНТА):

1. Пользователь заходит на сайт;
2. Регистрируется;
3. Заходит в Статью №1;
4. Нажимает кнопку «Купить за 1 балл»;
5. Переходит к оплате в Робокассу;
6. Оплачивает, введя свои данные;
7. Робокасса проверяет платеж и возвращает пользователя на ту страницу, с которой он пришел;

Вернувшись на сайт пользователь становится гостем, то есть произошел разлогин и его выкинуло из аккаунта. 

----------------------------

СИТУАЦИЯ ВТОРАЯ (ПОКУПКА ПОДПИСКИ):

1. Пользователь заходит на сайт;
2. Регистрируется;
3. Нажимает кнопку «Купить премиум доступ», под логотипом сайта, чтобы получить группу «модераторы» и читать статьи бесплатно; 
4. Переходит к оплате в Робокассу;
5. Оплачивает, введя свои данные;
6. Робокасса проверяет платеж и возвращает пользователя на ту страницу, с которой он пришел;

Вернувшись на сайт пользователь становится одновременно и модератором и гостем. Это я понял зайдя в phpMyAdmin в таблицу cms_users. Соответственно пользователь теперь вообще не может попасть в свой аккаунт и что-то читать.

Добавлено спустя 2 минуты

А есть рабочий сайт где установлен биллинг и все работает?

Добавлено спустя 4 минуты

Переписывался с поддержкой компонента Биллинг. Сказал что проблема в PHP директиве session.cookie_lifetime, что нужно выставить в ней параметр больше 0. Поставил session.cookie_lifetime = 600. Проблема не ушла. После чего поддержка прекратила отвечать.

#19 16 января 2022 в 20:14

Принадлежность к группе «модераторы» определяется параметром ид группы? Если да, то непонятно как пользователь может быть и гостем и модератором, у него group_id либо 0 гости либо скажем 3 — модераторы. 

Может у вас с настройками групп и их ацдишниками какая то путаница?

#20 16 января 2022 в 21:25

Принадлежность к группе «модераторы» определяется параметром ид группы? Если да, то непонятно как пользователь может быть и гостем и модератором, у него group_id либо 0 гости либо скажем 3 — модераторы. 

Может у вас с настройками групп и их ацдишниками какая то путаница?

Нил™

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

До покупки подписки только одна группа присвоена

Изображение

После покупки подписки уже присвоено сразу две группы

Изображение

Добавлено спустя 39 минут

За исправление этого бага фрилансер запросил 5000 р.

Если кого интересует, давайте скинемся и покончим с этим

Изображение

Пишите сюда кто готов внести вклад в исправление ошибки

#21 16 января 2022 в 21:49

Если кого интересует, давайте скинемся и покончим с этим

endorfin86

А что про это говорит R2?

За исправление этого бага фрилансер запросил 5000 р.

endorfin86

А почему не 50000 р.?


Я так понимаю проблема это только у нас с тобой! 

endorfin86

Так и есть, скорее всего) Потому что я проверил, все то что вы пишите, повторить не смог. ICMS 2.14.3 — Биллинг 2.0.6

#22 16 января 2022 в 22:26

А почему не 50000 р.?

Андрей

Воскресенье, вечер. Видимо, человек расслабился.

#23 16 января 2022 в 23:09

Если кого интересует, давайте скинемся и покончим с этим

endorfin86

А что про это говорит R2?

За исправление этого бага фрилансер запросил 5000 р.

endorfin86

А почему не 50000 р.?


Я так понимаю проблема это только у нас с тобой! 

endorfin86

Так и есть, скорее всего) Потому что я проверил, все то что вы пишите, повторить не смог. ICMS 2.14.3 — Биллинг 2.0.6

Андрей

Вас не выкидывает после тестового пополнение через Робокассу?  Меня лично и всех остальных выкидывает, а вас нет. Можете пруф приложить?

Добавлено спустя 1 минуту

 endorfin86, готов 500 рублей закинуть. Хотя что-то мне сомневается что кто-то кроме R2 сможет пофиксить эту проблему ибо почти весь компонент зашифрован в IONCUBE. 

#24 17 января 2022 в 09:07

Так и есть, скорее всего) Потому что я проверил, все то что вы пишите, повторить не смог. ICMS 2.14.3 — Биллинг 2.0.6

Андрей

Не сомгли, так как оплату совершали в тестовом режиме биллинга скорее всего. Подключите робокассу или другую платежку, произведите платеж с реальной банковской карты и ТОГДА У ВАС ВСЕ ПОЛУЧИТСЯ! 

Поставил я ICMS 2.14.3 и Биллинг 2.0.6 и никаких изменений, вылет из аккаунта сохраняется.

#25 17 января 2022 в 09:13

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

Если ставишь чистый и кроме биллинга ничего не делаешь, то откуда новые группы юзеров? В чистой их всего 5, а на скринах видно что есть ещё минимум 3 новых... 

#26 17 января 2022 в 12:05

Так и есть, скорее всего) Потому что я проверил, все то что вы пишите, повторить не смог. ICMS 2.14.3 — Биллинг 2.0.6

Андрей

Не сомгли, так как оплату совершали в тестовом режиме биллинга скорее всего. Подключите робокассу или другую платежку, произведите платеж с реальной банковской карты и ТОГДА У ВАС ВСЕ ПОЛУЧИТСЯ! 

Поставил я ICMS 2.14.3 и Биллинг 2.0.6 и никаких изменений, вылет из аккаунта сохраняется.

endorfin86

Всмысле? Типа если платеж реальный то выкидывать из профиля не будет при оплате через RoboKassa?

#27 17 января 2022 в 12:45

Так и есть, скорее всего) Потому что я проверил, все то что вы пишите, повторить не смог. ICMS 2.14.3 — Биллинг 2.0.6

Андрей

Не сомгли, так как оплату совершали в тестовом режиме биллинга скорее всего. Подключите робокассу или другую платежку, произведите платеж с реальной банковской карты и ТОГДА У ВАС ВСЕ ПОЛУЧИТСЯ! 

Поставил я ICMS 2.14.3 и Биллинг 2.0.6 и никаких изменений, вылет из аккаунта сохраняется.

endorfin86

Всмысле? Типа если платеж реальный то выкидывать из профиля не будет при оплате через RoboKassa?

CEH9I

Наоборот, при реальном платеже выкидывает, а при тестовом нет (не через тестовый платёж робокассы). Наверное мы друг друга не допоняли) 

Добавлено спустя 3 минуты

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

Если ставишь чистый и кроме биллинга ничего не делаешь, то откуда новые группы юзеров? В чистой их всего 5, а на скринах видно что есть ещё минимум 3 новых... 

Sonat

Я на скрине просто продемонстрировал присваивание двух групп. Я проверял и на чистом движке тоже самое. Просто не охота было сново ставить движок, только для того чтобы сделать скрины

#28 17 января 2022 в 13:20

Вернувшись на сайт пользователь становится гостем, то есть произошел разлогин и его выкинуло из аккаунта. 

endorfin86

Биллинг никак не управляет авторизацией. Если авторизация слетает, значит в браузере удаляется сессионная кука. Такое может быть, если:

1) параметр session.cookie_lifetime в настройках PHP имеет значение 0 (ноль) — в этом случае сессия живет до ухода с сайта;
2) после оплаты вы возвращаетесь на другой URL или протокол (http / https) — в этом случае браузер считает это отдельным ресурсом с другими куками.

Поставил session.cookie_lifetime = 600. Проблема не ушла

endorfin86

Потому, что никаких изменений реально не произошло. Я высылал вам скриншот (см. ниже) из devtools в браузере, где видно, что время жизни сессионной куки по-прежнему «Session», т.е. до конца сессии (тут под «сессией» подразумевается время нахождения на сайте), а не 600 секунд, как указано в ваших настройках. Если бы кука ставилась на 600 секунд, в колонке «Expires» была бы указана дата на 10 минут в будущем (см. соседние куки с нормальной датой).

Вам нужно было спросить у хостера, почему изменение настроек PHP никак не отражается на реальное положение дел. Возможно, требуется перезапуск каких-либо служб.

Изображение

#29 17 января 2022 в 14:45

В общем, горячие финские парни, есть подозрение что проблема в этом.

Попробуйте удалить вот эту строчку или в ней заменить Lax на None.

Т.е. проблема не в Биллинге, а скорее в изменённом поведении браузера, к чему InstantCMS был не совсем готов для таких случаев.

#30 17 января 2022 в 23:23

Не сомгли, так как оплату совершали в тестовом режиме биллинга скорее всего. Подключите робокассу или другую платежку, произведите платеж с реальной банковской карты и ТОГДА У ВАС ВСЕ ПОЛУЧИТСЯ! 

Поставил я ICMS 2.14.3 и Биллинг 2.0.6 и никаких изменений, вылет из аккаунта сохраняется.

endorfin86

у меня всё нормально. ICMS 2.14.3 и Биллинг 2.0.6 — платежка Юмани.

Не сомгли, так как оплату совершали в тестовом режиме биллинга скорее всего.

endorfin86

вам так наверное хочется чтоб было)

Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.