Eurokicker
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 10.08.2007, 13:36   #1
TP-Junior
 
Registriert seit: Mar 2007
Ort: Potsdam
Axelito macht alles soweit korrekt

Daten downloaden via Proxy (in PHP) ist ein Problem


Hallo zusammen,
hier also kurz und knackig mein Problem:

(1) Habe einen Server (Server 1) auf dem ein Skript dafür sorgen soll, das dessen htdocs-directory von xampp aktualisiert werden soll.
(2) Dazu will ich eine zip-Datei von einem anderen Server im WWW (Server 2) herunterladen.

Problem: Server 1 ist hinter einem Proxy und ich habe es bisher nicht geschafft diese zu überwinden. Habe jetzt eine gute halbe Stunde gegoogelt. mit fsockopen bin ich nicht weiter gekommen... obwohl ich denke das das der richtige Befehl ist.

Hier mein Gedankengang:

Server 1-Proxy: proxy.blablups.de
Server 2: 'http://www.server2.de/zipfile'

(a) fsockopen-verbindung zu proxy.blablups.de herstellen
(b) zipfile via fopen("http://www.server2.de/zipfile","r"); öffnen
(c) danach auslesen und via neuer fopen-connection auf dem Server 1 speichern.

Ist das so nicht richtig ?

Ich danke schon mal für konstruktive Kritik. Vielleicht hat jemand ja sogar ein Code-Beispiel für mich.

Gruß
Axelito
Axelito ist offline   Mit Zitat antworten


Alt 10.08.2007, 14:09   #2
TP-Urgestein
 
Benutzerbild von webcreate
 
Registriert seit: Nov 2003
Ort: NRW
webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts
Teste mal folgendes aus.
(Parameter halt anpassen)
PHP-Code:
<?php
$myFile 
"filename.zip";
$host "www.domain.de";
$documentpath "/folder/file.zip";
$fp fsockopen($host80$errno$errstr);
if (!
$fp) {
   echo 
"$errstr ($errno)<br />\n";
} else {        
    
$request "GET {$documentpath} HTTP/1.0\r\n";
    
$request .= "Host: {$host}\r\n";
    
$request .= "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.8) Gecko/20050511  Firefox/1.0.4\r\n\r\n";
    
$request .= "Content-type: text/html\r\n";
    
fputs ($fp$request); 
    while (!
feof($fp)) $foo .= fgets($fp1024);
    
fclose($fp);
    
$handle fopen($myFile"w+");
    
fwrite($handle$foo);
    
fclose($handle);
    
}
?>
__________________
Gruß Mark
Mein Blog zum TP || XING Profil || grafiker.de Profil || How to use GOOGLE
emCalculator 1.0

webcreate IT SOLUTIONS
www.webcreate-nrw.de
webcreate ist offline   Mit Zitat antworten
Alt 11.08.2007, 12:42   #3
TP-Junior
 
Registriert seit: Mar 2007
Ort: Potsdam
Axelito macht alles soweit korrekt
Hallo WebCreate,
danke für deinen Post. Ich werde es Anfang nächste mal auf Arbeit ausprobieren.
Eine Frage habe ich noch:
Ich verstehe das Prinzip immer noch nicht:
Im Falle deines geposteten Codes würde ich da nun bei $host den Proxy angeben oder die eigentliche homepage wo ich die Datei runterladen will ?

Wenn $host der Proxy ist wo gebe ich dann die eigentliche homepage an ?
Und wenn $host die homepage ist, woher weiß dann PHP über welchen Proxy es gehen soll ?

Wahrscheinlich fehlt noch irgendein Groschen der noch nicht gefallen ist ^^

Gruß und schönes WE

Axelito
Axelito ist offline   Mit Zitat antworten
Alt 13.08.2007, 17:23   #4
DSB
TP-Veteran
 
Benutzerbild von DSB
 
Registriert seit: Mar 2005
Ort: Oyten
DSB ist ein richtiges Arbeitstier - DANKEDSB ist ein richtiges Arbeitstier - DANKEDSB ist ein richtiges Arbeitstier - DANKEDSB ist ein richtiges Arbeitstier - DANKE
Ich glaube, das hier ist das, was Du suchst.
Die Funktion ist in der Lage Dateien über einen Proxy abzuholen, wobei eine Anmeldung am Proxy-Server berücksichtigt wird. Damit kannst Du Deine Datei über den Proxy laden.

PHP-Code:
function getthroughproxy ($myfiles$proxyhost=""$proxyport=8080$proxyuser ''$proxypass '' )
{
       
$errno '';
       
$errstr '';
       
$datei fsockopen($proxyhost$proxyport, &$errno, &$errstr,30); 
       if( !
$datei 
       {
           return array(
'headers'=>false,
                         
'content'=>false,
                         
'errno'=>$errno,
                         
'errstr'=>$errstr);
       
// ^^^ proxy not available
       
} else 
       {
           
fputs($datei,"GET $myfiles HTTP/1.0\n"); 
           if (
'' !== $proxyuser)
           {                
               
fputs($datei'Proxy-Authorization: Basic '.base64_encode("$proxyuser:$proxypass")."\n");
           }
           
fputs($datei"\n\n");
           
$zeile '';
           while (!
feof($datei)) 
           {
                 
$zeile =$zeile.fread($datei,4096);
           }
       }
       
fclose($datei);
       return array(
'headers'=>substr($zeile,0,strpos($zeile,"\r\n\r\n")),
       
'content'=>substr($zeile,strpos($zeile,"\r\n\r\n")+4),
       
'errno'=>$errno,
       
'errstr'=>$errstr);

__________________
Gruß, DSB
Einfaches Backup/ Restore Deiner MySQl-Datenbank
DSB ist offline   Mit Zitat antworten
Alt 16.09.2007, 19:54   #5
DSB
TP-Veteran
 
Benutzerbild von DSB
 
Registriert seit: Mar 2005
Ort: Oyten
DSB ist ein richtiges Arbeitstier - DANKEDSB ist ein richtiges Arbeitstier - DANKEDSB ist ein richtiges Arbeitstier - DANKEDSB ist ein richtiges Arbeitstier - DANKE
Hallo Axelito,

konnte Dir meine gepostete Funktion eigentlich weiterhelfen?
Ich mag es ehrlich gesagt nicht besonders wenn man als Antwort auf sein Problem eine fix und fertige Funktion "out of the box" bekommt und dann noch nicht einmal Feedback gibt.
__________________
Gruß, DSB
Einfaches Backup/ Restore Deiner MySQl-Datenbank
DSB ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
Daten downloaden via Proxy (in PHP) ist ein Problem Daten downloaden via Proxy (in PHP) ist ein Problem
« Bildübergabe per Formular Dateifeld geht nicht | Seite inkludieren - Inhaltwechsel bei Linkklick »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 04:32 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67