Vinzenz Mai: download einer Datei von einem Server

Beitrag lesen

Hallo,

ich möchte von dieser Seite http://browsers.garykeith.com/downloads die Datei php_browscap.ini per php-script downloaden. Wenn ich das mit meinem Browser mache, also http://browsers.garykeith.com/stream.asp?PHP_BrowsCapINI in die Adresszeile eingebe, dann bekomme ich die Datei.

und zwar mit Hilfe von HTTP/1.1

Wenn ich das aber mit folgendem script mache:

warum willst Du sowas von Hand zu Fuß machen?

[code lang=php]$bc_url = "browsers.garykeith.com";
function get_remote_file($url, $method = "GET", $data = "", $redirect = 10) {
    $fp = fsockopen ($url, 80, $errno, $errstr, 30);
    if ($fp) {
        $path = $url."/stream.asp?PHP_BrowsCapINI";
        $header = "\r\nHost: ".$url."\r\n";
        $header .= "Connection: Close\r\n\r\n";
        fputs ($fp, $method." ".$path." HTTP/1.0".$header);

und warum wunderst Du Dich, wenn Du HTTP/1.0 sprechen willst, dass

dann bekomme ich folgende Antwort:

HTTP/1.1 400 Bad Request

sich die Gegenstelle beklagt.
Abgesehen davon ist es absolut keine gute Idee, so etwas von Hand zu Fuß machen zu wollen. Falls die fopen-Wrapper freigeschaltet sind, nutze einfach file_get_contents(). Falls nicht, wäre die curl-Erweiterung die nächste Idee.

Freundliche Grüße

Vinzenz