проблема с curlopt followlocation

Тема в разделе "Как сделать...", создана пользователем zilon, 13 июл 2013.

  1. zilon

    zilon

    Регистр.:
    30 июл 2011
    Сообщения:
    370
    Симпатии:
    147
    пытаюсь разобраться с курлом, когда скрипт открываю вот такая ошибка появляется и страница не полностью загружается

    Warning: curl_setopt() [function.curl-setopt]: CURLOPT_FOLLOWLOCATION cannot be activated when in safe_mode or an open_basedir is set in /usr/home/newmuzo/data/www/new-muzon.net/...... on line 17

    safe_mode выключен open_basedir хостеры не дадут редактировать... что же делать? :alko:

    PHP:
    <?php
     
    login
    ("http://new-muzon.net/admin.php""subaction=dologin&username=****&password=********&selected_language=Russian");
    echo 
    grab_page("http://new-muzon.net");
     
    function 
    login($url,$data){
     
        
    $fp fopen("cookie.txt""w");
        
    fclose($fp);
        
    $login curl_init();
        
    curl_setopt($loginCURLOPT_COOKIEJAR"cookie.txt");
        
    curl_setopt($loginCURLOPT_COOKIEFILE"cookie.txt");
        
    curl_setopt($loginCURLOPT_TIMEOUT40000);
        
    curl_setopt($loginCURLOPT_RETURNTRANSFERTRUE);
        
    curl_setopt($loginCURLOPT_URL$url);
        
    curl_setopt($loginCURLOPT_USERAGENT$_SERVER['HTTP_USER_AGENT']);
        
    curl_setopt($loginCURLOPT_FOLLOWLOCATIONTRUE);
        
    curl_setopt($loginCURLOPT_POSTTRUE);
        
    curl_setopt($loginCURLOPT_POSTFIELDS$data);
        
    ob_start();
        return 
    curl_exec($login);
        
    ob_end_clean();
        
    curl_close ($login);
        unset(
    $login);
     
    }
     
     
    function 
    grab_page($site){
        
    $ch curl_init();
        
    curl_setopt($chCURLOPT_RETURNTRANSFERTRUE);
        
    curl_setopt($chCURLOPT_USERAGENT$_SERVER['HTTP_USER_AGENT']);
        
    curl_setopt($chCURLOPT_TIMEOUT40);
        
    curl_setopt($chCURLOPT_COOKIEFILE"cookie.txt");
        
    curl_setopt($chCURLOPT_URL$site);
        
    ob_start();
        return 
    curl_exec ($ch);
        
    ob_end_clean();
        
    curl_close ($ch);
     
    }
     
  2. latteo

    latteo Эффективное использование PHP, MySQL

    Moderator
    Регистр.:
    28 фев 2008
    Сообщения:
    1.450
    Симпатии:
    1.239
    Если советы типа менять хостера, переходить на VDS не подходят, то остаётся только одно ... гуглить "Эмуляция CURLOPT_FOLLOWLOCATION"

    Нормальный, но не идеальный, код для этого дела можно подсмотреть тут:
    http://i-leon.ru/эмуляция-curlopt_followlocation/
    и кое что можно почерпнуть здесь: http://forum.php.su/topic.php?forum=35&topic=739
     
    zilon и stealthdebuger нравится это.