Внешний вход в phpbb3 с помощью curl

Я создал расширение для своего сайта. Пользователь должен авторизоваться на форуме после того, как он авторизуется на сайте.

Сеанс пользователя был успешно создан (проверен в базе данных), но пользователь все еще не вошел в систему.

Если я пытаюсь войти в систему с помощью внешней формы входа, она отлично работает (сеанс создается, и пользователь входит в систему).

Я думаю, что проблема не в моем расширении аутентификации.

Я думаю, что сделал что-то не так с curl post и cookie.

Какие параметры завитка я должен установить для входа в систему? Или, может быть, вы можете дать мне несколько полезных ссылок?


person young B    schedule 15.02.2017    source источник
comment
Запросы curl будут регистрировать curl, но не конечного пользователя, если вы не возьмете файлы cookie phpBB, установленные с помощью curl, и не установите их для браузера клиента.   -  person drew010    schedule 16.02.2017
comment
Возьмите несколько файлов cookie phpbb3_* и отправьте их через [setcookie()](php.net/setcookie), чтобы передать пользователю. Это может работать, в зависимости от вашего уровня безопасности файлов cookie в phpBB (они не могут быть привязаны к IP, потому что curl и IP пользователя будут разными.   -  person drew010    schedule 16.02.2017
comment
в порядке. попытаюсь. спасибо =)   -  person young B    schedule 17.02.2017
comment
Не могли бы вы помочь мне еще с одним вопросом? В панели администратора phpbb присутствует поле Session IP validation:. И я хочу оставить его со значением ABC. Есть ли способ установить IP-адрес с помощью cUrl? в настоящее время я использую этот curl_setopt($ch, CURLOPT_HTTPHEADER, array(REMOTE_ADDR: $ip, HTTP_X_FORWARDED_FOR: $ip)); Еще раз спасибо. P.S. предыдущий ответ помог мне с проблемой. Но есть и другие проблемы, как видите =)   -  person young B    schedule 18.02.2017
comment
Вы не сможете использовать curl и передавать файлы cookie клиенту, если у вас включена проверка IP-адреса сеанса. Я бы предложил отключить это или вместо использования завитка найти плагин/модуль, который может выполнять вход в систему сторонних лиц, или посмотреть код обработки аутентификации и воспроизвести его. Чтобы войти в систему без запроса пароля phpBB, не потребуется много времени.   -  person drew010    schedule 19.02.2017
comment
спасибо за повтор. знак равно   -  person young B    schedule 22.02.2017


Ответы (1)


Возьмите несколько файлов cookie phpbb3_* и отправьте их через [setcookie()](php.net/setcookie) передать пользователю. Это может работать, в зависимости от вашего уровня безопасности файлов cookie в phpBB (они не могут быть привязаны к IP, потому что curl и IP пользователя будут разными

Дрю010

Вы не сможете использовать curl и передавать файлы cookie клиенту, если у вас> включена проверка IP-адреса сеанса. Я бы предложил отключить это или > вместо использования curl, найти плагин/модуль, который может выполнять > сторонний вход в систему, или просмотреть код обработки аутентификации и воспроизвести его. Для входа пользователя в систему не потребуется много времени, не требуя его пароля phpBB.

Дрю010

person young B    schedule 28.07.2017
comment
Что вы имеете в виду из этого ответа? Вы откуда-то цитируете? В противном случае избегайте использования Blockquotes - person Ajil O.; 28.07.2017
comment
Я написал ответы, которые помогли мне решить мою проблему. Эти ответы я получил в комментариях выше. Я добавил их в цитаты, так как не являюсь их автором. Также я написал ник автора комментария - person young B; 29.07.2017