In durch , php_info()
wo der WSDL - Cache gehalten ( /tmp
), aber ich weiß nicht unbedingt , wenn sie alle Dateien zu löschen , beginnend mit WSDL sicher ist.
Ja, ich sollte in der Lage sein, einfach alles zu löschen /tmp
, aber ich weiß nicht, was dies sonst noch bewirken könnte, wenn ich alle WSDL-Dateien lösche.
ini_set('soap.wsdl_cache_ttl', 1);
und sie eine Stunde lang stehen ließ - hier zu finden: stackoverflow.com/questions/323561/…Entfernen Sie alle
wsdl*
Dateien in Ihrem/tmp
Ordner auf dem Server.WSDL-Dateien werden für alle in php.ini definierten Cache-Dateien an Ihrem Standardspeicherort zwischengespeichert. Gleicher Speicherort wie Ihre Sitzungsdateien.
quelle
Wenn Sie den Code bereits bereitgestellt haben oder keine Konfiguration ändern können, können Sie alle temporären Dateien aus wsdl entfernen:
quelle
Ich empfehle die Verwendung eines Cache-Buster in der wsdl-URL.
In unseren Apps verwenden wir eine SVN-Revisions-ID in der wsdl-URL, damit der Client sofort über sich ändernde Strukturen informiert wird. Dies funktioniert in unserer App, da wir bei jedem Wechsel der Serverseite auch den Client entsprechend anpassen müssen.
Dies erfordert, dass svn richtig konfiguriert ist. Nicht in allen Repositorys ist dies standardmäßig aktiviert.
Falls Sie nicht für beide Komponenten (Server, Client) verantwortlich sind oder SVN nicht verwenden, finden Sie möglicherweise einen weiteren Indikator, der als Cache-Buster in Ihrer WSDL-URL verwendet werden kann.
quelle
Nur aus Gründen der Dokumentation:
Ich habe jetzt (2014) festgestellt, dass von all diesen wertvollen und korrekten Ansätzen nur einer erfolgreich war. Ich habe der WSDL auf dem Server eine Funktion hinzugefügt, und der Client hat die neue Funktion nicht erkannt.
WSDL_CACHE_NONE
zu den Parametern hat nicht geholfen.soap.wsdl_cache_enabled
auf PHP ini hat geholfen.Ich bin mir jetzt nicht sicher, ob es sich um die Kombination aller drei handelt oder ob einige Funktionen schrecklich implementiert sind, so dass sie zufällig unbrauchbar bleiben, oder ob eine Hierarchie von Funktionen nicht verstanden wird.
Erwarten Sie also schließlich, dass Sie alle drei überprüfen müssen, um Probleme wie diese zu lösen.
quelle
Bearbeiten Sie Ihre
php.ini
Datei, suchen Sie nachsoap.wsdl_cache_enabled
und setzen Sie den Wert auf0
quelle