Файлы cookie PHP и cURL

Я пытаюсь настроить php-страницу, которая использует cURL для доступа к стороннему серверу для входа в систему. Сейчас мой код успешно выполняет вход на сторонний сервер, но поскольку cURL не отправляет cookie SESSION пользователю, пользователь должен войти в себя

Как я могу получить cURL для пересылки файлов cookie клиенту. благодаря

Solutions Collecting From Web of "Файлы cookie PHP и cURL"

Ознакомьтесь с документацией по следующим параметрам cURL:

CURLOPT_COOKIE CURLOPT_COOKIEFILE CURLOPT_COOKIEJAR 

РЕДАКТИРОВАТЬ

Прочитав ваш вопрос более подробно, я боюсь сказать вам, что нет способа писать файлы cookie в браузер клиента, если вы не перенаправляете клиента на сайт, на который вы пытаетесь разрешить их. Куки-файлы браузера работают с моделью безопасности, известной как политика одинакового происхождения . Это в основном означает, что домены могут выдавать файлы cookie только для своих OWN-доменов и не могут выдавать файлы cookie для других доменов. В вашем конкретном случае:

 client --CONTACTS--> foo.com --cURL-LOGIN--> bar.com bar.com --bar.com-COOKIE--> foo.com --foo.com-COOKIE--> client client --foo.com-COOKIE--> bar.com (Will not work) 

В принципе, foo.com НЕ МОЖЕТ создавать куки на клиенте для bar.com!

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

Вы можете в своем PHP-коде войти и получить cookie сеанса для (например, Hotmail). Но вы не сможете передать эту сессию пользователю (так что он / она также войдет в систему).

Это связано с тем, что многие браузеры и конфигурации запрещают установку сторонних файлов cookie.

Вы можете настроить cookie в браузере пользователя, не перенаправляя его на сервер. то, что вам нужно сделать, – это заставить пользователя напасть на вашу php-страницу с помощью curl-кода. то вы можете взять его данные и отправить эти данные на сервер. Но не позволяйте серверу переделывать вас. Установите параметр как CURLOPT_FOLLOWLOCATION как false и установите CURLOPT_HEADER как истинный. Теперь захватите заголовок и извлеките заголовки файлов cookie и местоположения, а затем передайте их как заголовки в клиентский браузер, например заголовок («Местоположение: …) и заголовок (« Set-Cookie » : ….). вы также можете отправить другие заголовки, извлекая их. следующая страница [post] html, не получающая файлы cookie через libcurl, имеет аналогичную ситуацию