|
|
|
| Перерыл всю документацию по curl - ничего не нашел... :(
Скачать любую страницу *.php, *.html... - без проблем, сокеты работают исправно.
Но если скачивать что либо другое - ту же картинку *.jpg, *.gif - выдает следующее:
Method Not Allowed
The requested method POST is not allowed for the URL /lala/lala.jpg
причем 50 на 50 - как повезет...
в браузере вставляешь адрес - открывается. CURL - непонятки...
думаю загвоздка где то здесь:
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_REFERER, $referer); | |
|
|
|
|
|
|
|
для: Bloody Angel
(06.02.2007 в 00:24)
| | Вместо POST надо GET. Тут уже документация по протоколу HTTP/1.0 нужна... | |
|
|
|
|
|
|
|
для: Саня
(06.02.2007 в 01:08)
| | ставлю
curl_setopt($ch, CURLOPT_POST, 0);
пишет тоже самое... | |
|
|
|
|
|
|
|
для: Bloody Angel
(06.02.2007 в 18:07)
| | Приведи-ка полный вариант скрипта, я кажется знаю в чем суть, просто надо посмотреть... | |
|
|
|
|
|
|
|
для: mihdan
(07.02.2007 в 11:56)
| | if ($method == 'POST') $use_post = 1;
else $use_post = 0;
$socket = '';
$ch = curl_init();
if ($proxy == 1) {
$connect = $proxyHost.':'.$proxyPort;
curl_setopt($ch, CURLOPT_PROXY, $connect);
}
curl_setopt($ch, CURLOPT_POST, $use_post);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_REFERER, $referer);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)');
// загрузка страницы и выдача её браузеру
$socket = curl_exec($ch);
if( curl_errno($ch) != 0 ) {
die('CURL_error: ' . curl_errno($ch) . ', ' . curl_error($ch));
};
// завершение сеанса и освобождение ресурсов
curl_close($ch);
Все это реализовано в виде функции. передаются следующие параметры:
$method - собственно метод. Если там "POST" - то используем этот метод, иначе как я понимаю, "GET"
$proxy - использовать прокси, или нет
$proxyHost - адрес прокси, через которую я выхожу
$proxyPort - адрес порта на проксе
$url - адрес скачиваемой страницы (www.lala/lala/lalala.jpg)
$referer - думаю, понятно
В итоге в $socket - та самая картинка...но в виде кучи непонятных символов | |
|
|
|
|
|
|
|
для: Bloody Angel
(07.02.2007 в 14:26)
| | Для POST пишется так
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, "login=$login&password=$password&client_type=NIC-D&password_type=adm");
|
У вас я не увидел этого или я что то не так понял | |
|
|
|
|
|
|
|
для: mihdan
(07.02.2007 в 14:34)
| | У меня так:
if ($method == 'POST') $use_post = 1;
else $use_post = 0;
curl_setopt($ch, CURLOPT_POST, $use_post);
А мне, то, как я понял, нужен GET !!! | |
|
|
|