Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|
Различия cURL на хостингах |

02.01.2010, 16:47
|
|
Участник форума
Регистрация: 20.04.2007
Сообщений: 174
Провел на форуме: 2310282
Репутация:
149
|
|
Различия cURL на хостингах
Странная ситуация - не пойму в чем дело.
Написан скрипт на PHP, использующий cURL.
На моем локалхосте (Linux) все сносно работает.
Заливаю на другие хостинги - болт!
Делаю запросы в RU зону - никаких данных cURL не получает, даже хидеры (например, yandex.ru, vkontakte.ru, rambler.ru).
Сделал запрос в зону .NET, ответ приходит.
Возможно ли, что хостинг ограничивает cURL?
Или какие-то настройки по дефолту не те стоят?
|
|
|

02.01.2010, 16:58
|
|
Постоянный
Регистрация: 08.11.2008
Сообщений: 498
Провел на форуме: 2603363
Репутация:
278
|
|
Код в студию
|
|
|

02.01.2010, 17:05
|
|
Участник форума
Регистрация: 20.04.2007
Сообщений: 174
Провел на форуме: 2310282
Репутация:
149
|
|
Сообщение от Deathdreams
Код в студию
PHP код:
<?php
function curl($url, $post = '', $binary = 0) {
global $cookie;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
curl_setopt($ch, CURLOPT_BINARYTRANSFER, $binary);
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
curl_close($ch);
return $result;}
?>
Думаю решение нашел http://icebeer.livejournal.com/19772.html
Тестирую...
|
|
|

02.01.2010, 18:00
|
|
Постоянный
Регистрация: 08.11.2008
Сообщений: 498
Провел на форуме: 2603363
Репутация:
278
|
|
PHP код:
<?php
function curling($url, $post = '') {
global $cookie;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 1);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
}
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
curl_setopt($ch, CURLOPT_TIMEOUT, 15);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
?>
ну попробуйте сделать обычный запрос к гуглу:
curling('http://www.google.ru');
|
|
|

02.01.2010, 19:32
|
|
Участник форума
Регистрация: 20.04.2007
Сообщений: 174
Провел на форуме: 2310282
Репутация:
149
|
|
Хостинг: forsite.org
Запрос на www.google.com - проходит!
Запрос на www.google.ru - не проходит!
Видимо дело в хостинге.
Хостинг фришный, поэтому скорей всего и режут запросы (интересно как?)
На другом хостинге (www.abris.com.ua) тоже не работает, но там что-то другое.
К сожалению, возможности протестировать на нем не было, хост не мой.
Буду искать выходы, о результатах отпишусь.
|
|
|

02.01.2010, 19:59
|
|
Участник форума
Регистрация: 26.08.2009
Сообщений: 138
Провел на форуме: 201522
Репутация:
18
|
|
Сообщение от GlooK
Хостинг: forsite.org
Запрос на www.google.com - проходит!
Запрос на www.google.ru - не проходит!
Видимо дело в хостинге.
Хостинг фришный, поэтому скорей всего и режут запросы (интересно как?)
На другом хостинге (www.abris.com.ua) тоже не работает, но там что-то другое.
К сожалению, возможности протестировать на нем не было, хост не мой.
Буду искать выходы, о результатах отпишусь.
Из фришных проблемы не возникают только с free-web-host.me
С другими траблы..
|
|
|

02.01.2010, 20:19
|
|
Участник форума
Регистрация: 20.04.2007
Сообщений: 174
Провел на форуме: 2310282
Репутация:
149
|
|
Сообщение от programming
Из фришных проблемы не возникают только с free-web-host.me
С другими траблы..
Спасибо за ссылку! Отпишусь о результатах
UPD:
Скрипт заработал!
Только на хостинге не выполняется set_time_limit(0);
Из-за чего скрипт не обновляется онлайн.
Последний раз редактировалось GlooK; 02.01.2010 в 20:28..
|
|
|

02.01.2010, 20:54
|
|
Познающий
Регистрация: 04.04.2009
Сообщений: 58
Провел на форуме: 687854
Репутация:
19
|
|
GlooK, если бы (не дай бог) set_time_limit(0); работал, вас бы выпилили на след. день  Представляете, сколько системных ресурсов потребуется? На всех хостах по 30-60 сек обновление стоит дефолтом, если, конечно не vds и права рута 
|
|
|

02.01.2010, 21:01
|
|
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
Провел на форуме: 6075534
Репутация:
2731
|
|
Dark_Scorpicore, ну и сколько сис. ресурсов потребуется? set_time_limit ставит всего лишь лимит время выполнения скрипта, и не больше. А кол-во пожираемых сис. ресурсов зависит от самого скрипта + на любом адекватном хостинге стоят ограничения на эти ресурсы, по этому никого и не "выпиляют".
|
|
|

02.01.2010, 21:08
|
|
Участник форума
Регистрация: 20.04.2007
Сообщений: 174
Провел на форуме: 2310282
Репутация:
149
|
|
Сообщение от Dark_Scorpicore
GlooK, если бы (не дай бог) set_time_limit(0); работал, вас бы выпилили на след. день  Представляете, сколько системных ресурсов потребуется? На всех хостах по 30-60 сек обновление стоит дефолтом, если, конечно не vds и права рута 
Ну не знай...
На iphoster.ru, хостинг за 0.7$ другой скрипт, который выполнял те же функции - работал.
UPD:
Установил Денвер. Попробовал на нем - скрипт не заработал.
Оказалось, что на денвере по умолчанию нет cURL.
Установил расширение PHP 5, и раскомментировал в php.ini строку extension.
Всё заработало! 
Последний раз редактировалось GlooK; 02.01.2010 в 22:26..
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|