Frage

Ich mache eine Web-Anwendung in PHP und will Inhalte aus einer anderen Domäne lesen. Es scheint, dass meine wichtigsten Optionen sind fopen und curl.

Was sind die wichtigsten Unterschiede zwischen diesen beiden Methoden, vor allem in Bezug auf Sicherheit und Optionen?

Ist es egal, ob die URL eine http oder https-Website?

War es hilfreich?

Lösung

verwenden Locken externe Bibliothek und es hat viel mehr Kraft, die Anforderung zu Customizing - benutzerdefinierte Header, Erzeugen von POST-Anfrage, das Hochladen von Dateien. Alles, was Sie brauchen, muss ich sagen.

Fopen beschränkt sich auf nur gerade eine GET-Anforderung der URL zu machen, ohne weitere Anpassung.

Wie für die Sicherheit ROTATION von Sicherheitskonfiguration in PHP nicht beeinflusst wird (wie fopen von Fern URLS und solche verboten).

Die beiden Möglichkeiten kehren Sie Daten, die Sie in jeder möglichen Weise können Sie wollen. Wenn Sie eine Sicherheitslücke in Ihrem Projekt machen, nachdem die Daten zu erhalten ist deine Schuld, nachdem alle.

Auch ich bin nicht ganz sicher, aber ich denke, dass fopen kann SSL (https) Verbindungen nicht verarbeiten. Sowohl fopen und ROTATION Unterstützung SSL (wie unten von Andy Shellam in einem Kommentar darauf hingewiesen).

Andere Tipps

Siehe Was sind die wichtigen Unterschiede zwischen fopen ($ url) und curl in PHP? für einige Sicherheitseinstellungen verwenden, nämlich allow_url_include fopen Affekt.

Beachten Sie auch, dass mit curl, wenn Sie setopt CURLOPT_FOLLOWLOCATION dann folgt curl Umleitungen zu file: //, um Daten abzurufen (noch unter dem Vorbehalt open_basedir). Umleitungen an andere Systeme wie ftp: // könnte schlimmer sein (nicht ftp haben getestet: //). Ohne diese setopt curl folgt nicht Umleitungen überhaupt. fopen scheint die Arbeit mit 302 standardmäßig aber nur http: // -> http: // und nicht http: // -> Datei:. //

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top