Ich muss über die Befehlszeile (PHP CLI) einige Dateien laufen, die von Zend Guard verschlüsselt wurden und PHP scheint nur zu beenden, sobald es eine codierte Datei ohne Fehlermeldung erreicht . Ist es möglich PHP-Skripte auszuführen, die von Zend Guard von der Kommandozeile aus codiert werden?Führen Sie mit ZendGuard codiertes PHP-Skript über die Befehlszeile aus
Mehr Details
In der Anwendung, die ich gerade arbeite, muss einige Aufgaben in regelmäßigen Abständen ausgeführt werden. Zuerst haben wir Controller für einige URLs implementiert, die nur zum Ausführen der Aufgaben verwendet wurden. Dann würden wir einen Cron-Job unter Verwendung wget
auf diesen Seiten tun. Das Problem besteht darin, dass für einige dieser Tasks Parameter ausgeführt werden mussten. Die Verwendung von wget
für eine POST-Anfrage funktioniert nicht, da das erste, was Zend Guard tut, ein Cookie ist und dann eine Weiterleitung an dieselbe URL durchführt. Bei der zweiten Anforderung, da sie jetzt in GET ist, gingen alle Parameter verloren.
Wir entschieden uns dann, zu einem Befehlszeilenskript zu wechseln, um das Problem zu beheben. Wir mögen diesen Ansatz wirklich, da er Probleme behebt, die wir mit dem URL-basierten Problem hatten. Erstens hält es eine geöffnete Apache-Verbindung für einen längeren Zeitraum nicht aufrecht. Außerdem gibt es keine interne Logik für öffentliche URLs. Wie ich bereits sagte, wenn wir versuchen, diese Kommandozeilen-Skripte auszuführen, passiert nichts, die Anwendung wird einfach beendet.
Wir verwenden Ubuntu 12.04 LTS, PHP 5.4.25 und Apache 2.2.22. Ich stellte sicher, dass die Zend Guard-Erweiterung korrekt in der Befehlszeile geladen wurde. Es funktioniert auch korrekt, wenn auf die Seiten von einem Webbrowser zugegriffen wird.
Wenn mir jemand mit diesem Problem helfen kann, würde es sehr geschätzt werden. Vielen Dank!
Gibt es in Ihren Protokollen etwas über den Fehler? Hast du versucht, deinen Loglevel zu erhöhen? – halfer
Wo haben Sie Ihr Zend Guard-Modul installiert? Kannst du die genauen Details darüber anzeigen, wie und in welchen Dateien in welchen Verzeichnissen das Zend Guard Modul aktiviert ist? –
Wie wäre es mit einem kleinen PHP-Skript, das das Skript "locken" lässt? First 'curl' öffnet die Verbindung, ruft den Cookie ab und wird umgeleitet. Der zweite 'curl' macht eine POST-Anfrage und sendet den Cookie. Hat nicht die Vorteile Ihres zweiten Ansatzes, aber ich denke, es wird funktionieren. – Reeno