Żądanie zwijania za pomocą skrótu autoryzacji w PHP do pobrania prywatnego repozytorium Bitbucket

Próbuję wykonać to żądanie na php, aby pobrać ostatnie źródło z prywatnego repozytorium Bitbucket:

<code>curl --digest --user user:pass https://bitbucket.org/user/repo/get/tip.zip -o test.zip
</code>

w linii poleceń jest ok, pobieranie pliku jest idealne, ale w php nie działa, to mój kod php:

<code>$out = fopen('test.zip', 'w+');
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_DIGEST);
curl_setopt($ch, CURLOPT_USERPWD, 'user:pass');
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_FILE, $out);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_NOBODY, false);
curl_setopt($ch, CURLOPT_URL, 'https://bitbucket.org/user/repo/get/tip.zip');
curl_exec($ch);
</code>

To jest odpowiedź, jej login jest nieprawidłowy, a serwer przekierowuje na stronę logowania:

<code>Error CURL: '' 
Error number: 0
Array
(
    [url] => https://bitbucket.org/account/signin/?next=/user/repo/get/tip.tar.gz
    [content_type] => text/html; charset=utf-8
    [http_code] => 200
    [header_size] => 1099
    [request_size] => 194
    [filetime] => -1
    [ssl_verify_result] => 0
    [redirect_count] => 1
    [total_time] => 1.055465
    [namelookup_time] => 1.5E-5
    [connect_time] => 0.102969
    [pretransfer_time] => 0.216164
    [size_upload] => 0
    [size_download] => 10049
    [speed_download] => 9520
    [speed_upload] => 0
    [download_content_length] => 10049
    [upload_content_length] => 0
    [starttransfer_time] => 0.527512
    [redirect_time] => 0.527519
    [redirect_url] => 
)
</code>

Ktoś wie, jak mogę rozwiązać mój problem? Dziękuję Ci bardzo!!!

questionAnswers(3)

yourAnswerToTheQuestion