Frage

Okay, das PHP -Skript gibt es auf Servera. Servera hat einen PHP-Safe-Modus und WebDav aus. Ich kann keinen dieser Faktoren ändern. Ich möchte, dass ein Skript auf Servera das Anmeldung/Kennwort des Benutzers für einen anderen Server erhält, den wir ServerB aufrufen werden. ServerB hat WebDAV.

Das ultimative Ziel ist, dass der Benutzer zum Skript auf Servera wechselt, seine Anmeldeinformationen für ServerB einfügt. Anschließend erstellt das Skript eine iCale Datei und platziert sie auf ServerB, so Googlecalendar usw. (für die die Datei auf einem WebDAV -Server steht).

Also habe ich es versucht

fopen(servername/filename, r) 

und konnte Dateien auf dem Remote -Server lesen. Aber als ich es versuchte

fopen(servername/filename, w)

Ich erhalte einen Fehler, den der HTTP -Wrapper nicht unterstützt, nur das Schreiben.

Kurz gesagt, es gibt eine Möglichkeit, eine Verbindung zu diesem Server herzustellen und sich zu authentifizieren, eine Datei zu schreiben und die Verbindung zu schließen, ohne die bereits bestehenden WebDAV-Bibliotheken für PHP zu verwenden und ohne mit einem Fehler mit Safe-Modi-Berechtigungen zu klicken?

Vielen Dank!

War es hilfreich?

Lösung

Das Problem ist, dass der HTTP -Protokollverpackung für PHP nicht ausgedrückt wird. Sie sollten versuchen, Ihre eigene zu schreiben, entweder mit Fsockopen oder vorzugsweise so etwas wie Curl.

http://ca3.php.net/manual/en/wappers.http.php

Dies hat nichts mit dem abgesicherten Modus zu tun.

Andere Tipps

Das Problem hier ist, dass Safe-Mode Sie einschränken soll, damit Sie Dinge außerhalb Ihrer "sicheren" Zone nicht ausführen können.

Was Sie versuchen könnten (wenn Sie können), ist, die zu ändern safe_mode_exec_dir In Php.ini können Sie externe Programme starten, die das Schreiben der Datei für Sie ausführen können (wenn sie sich in diesem Verzeichnis sicherer Modelle befinden

Ich bin mir nicht sicher, dass jemand das ausführlicher beantworten kann.

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