Hallo Felix,
genaueres weiß ich jetzt auch nicht, aber ich vermute etwas. Es wäre ja möglich, dass der HTTP-Request Deines Scripts beim Zielserver zwar "ins Leere" lief, der Server Dir aber ein gültiges Dokument ausgeliefert hat, ohne eine HTTP-Fehlernummer mit zu liefern. Damit ist für PHP das Dokument die angeforderte Seite, dein $handle bekommt eine gültige Resource und Dein Script liefert die beklagte Meldung.
Klar, das ist es: es wird eine Fehlerseite ausgegeben.
Und diese Fehlerseite schickt natürlich einen 200 ok mit.
Natürlich?
Da schließt sich die nächste Frage an:
Kann man Fehlerseiten so schreiben, daß ein 404 mitgegeben wird?
Gruß Fritz