Всем привет! Надеюсь на Вашу помощь. Есть страничка, на которой есть select
. При его изменении подгружаются данные с php
-скрипта через ajax
. Мне же необходимо получить эти самые данные только со своего сервера. Однако при отправке post
через curl
возвращаются только заголовки:
HTTP/1.1 200 OK
Server: nginx/1.12.2
Date: Mon, 04 Mar 2019 20:10:24 GMT
Content-Type: text/html; charset=UTF-8
Content-Length: 0
Connection: keep-alive
X-Powered-By: PHP/7.2.15
И никакие данные не возвращаются.
Делаю так, даже меняю заголовки referer
, origin
и т.д:
$h = date('H') - 3;
$i = date('i');
$s = date('s');
$headers = array(
'Referer: https://site.ru/page_with_select/',
'Origin: https://site.ru',
'Date: Mon, 04 Mar 2019 '.$h.':'.$i.':'.$s.' GMT',
'Content-type: application/x-www-form-urlencoded',
'Content-Length: 31',
'Connection: keep-alive',
'Cache-Control: no-store, no-cache, must-revalidate',
'Set-Cookie: PHPSESSID=ИД сессии из cookies.txt; path=/',
'User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.119 Safari/537.36',
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://site.ru/page_with_select/script.php");
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, "postdata=postdata");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookies.txt');
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookies.txt');
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
$string = curl_exec($ch);
curl_close($ch);
print_r($string);
Когда же я меняю ajax
прямо в браузере, на их сайте, все данные подгружаются нормально.
В чем может быть проблема? Заранее спасибо!
Виртуальный выделенный сервер (VDS) становится отличным выбором
Следуя по примерам из учебника в документации я переписал routesphp соответствующим образом:
Есть форма с двумя инпутами - исходное значение и заменяемое, форма отправляет GET в файл replacephp