Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [inne][PHP] Pobieranie plików z serwerów wymagających autoryzacji
Forum PHP.pl > Forum > Przedszkole
kubap007
Witam,

Chciałbym pobrać do mojego programu dane z pliku znajdującego się na serwerze z autoryzacją (oczywiście posiadam login i hasło do pliku). Poradzono mi, aby uzyć programu wget, ale niestety nie działa. Częściowo może to być wina, że nie potrafię go obsługiwać lub nie jest obsługiwany przez mój wirtualny serwer php+mysql (WAMP 2.0). Plik, który chcę ściągnąć mogę albo otworzyć od razu albo mogę czytać po zapisaniu jest to dla mnie bez różnicy. Wiem, że podobne problemy były na forum ale wtedy potrzebowali tylko logów, a w necie nie mogę znaleźć nigdzie rozwiązania bo potrzebna tu jest autoryzacja.

Oto mój kod:
  1. $wget = shell_exec('wget -c -t 1 -o ./wget.txt --http-user=xxx --http-password=xxx url')


lub

  1. $wget = system('wget -c -t 1 -o wget.txt --http-user=xxx --http-password=xxx url')


I parę innych kombinacji i nic nie działa. Będę wdzięczny za pomoc.
l3l0
  1. $wget = shell_exec('wget -c --http-user=xxx --http-password=xxx url');


kubap007
Sprawdzałem też nie działa (w kodzi powyżej podanym przeze mnie jest automatycznie dodał się kod url i pokazuje coś czego nie ma).
l3l0
Mógłbyś też sprobować pobrać ten plik przez CURLa albo file_get_contents tworząc odpowiedni stream_context
np. wykorzystanie file_get_contents:
  1.  
  2. $contextOptions = array(
  3. 'http' => array(
  4. 'header' => 'Authorization: Basic ' . base64_encode('username:passwd')
  5. )
  6. );
  7.  
  8. $context = stream_context_create($contextOptions);
  9. $data = file_get_contents($url, false, $context);


Pozdrawiam
Pilsener
Jak jest autoryzacja to mogą być i inne zabezpieczenia, np. referer, wymagane standardowe nagłówki wysyłane przez przeglądarkę a nawet ciastka. Logicznym wyjściem wydaje się:
- użycie specjalnego dodatku do przeglądarki (zapomniałem nazwy, coś tam live http), który pokaże nagłówki wysyłane i odbierane przez ten serwer
- użycie CURL
kubap007
Dzięki l3l0 za pomoc, musiałem jeszcze ustawić obsługę większych plików i wszystko śmiga.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.