Frage

Ich habe einen vorhandenen CakePhp, der in einer Lampenumgebung läuft und sie auf einem USB -Laufwerk für die öffentliche Massenverteilung installieren muss.

Es gibt einige Anforderungen:

  • Schützen Sie den Quellcode
  • Keine Installation erforderlich
  • Windows unterstützt essentiell
  • Mac & Linux wäre ein Bonus
  • Muss offline ohne Internetverbindung laufen
  • Fähigkeit, mit dem Server für Datenübertragung und Updates zu synchronisieren

Ich habe eine große Menge an Forschungen zu den Optionen durchgeführt und möchte lernen, was andere Entwickler denken.

Potenzielle Lösungen: - Flash / XML - Adobe Air App - USB -Webserver (Server2go, Portable Apps XAMPP)

Hat jemand einen der oben genannten benutzt, wären alle Kommentare sehr geschätzt.

Vielen Dank

War es hilfreich?

Lösung

Das habe ich früher eine CakePHP -App aus einer DVD ausgeführt. Arbeitete auch an USB (während ich es noch entwickelte).

http://www.server2go-web.de/

Server2Go ist ein Webserver, der ohne Installation und auf Schreibgeschützte aus der Box ausgeht. Dies bedeutet, dass Webanwendungen, die auf Server2GO basierend sind, direkt von CDROM, einem USB -Stick oder von einem beliebigen Ordner auf einer Festplatte verwendet werden können, ohne dass Apache, PHP oder MySQL konfiguriert werden. Mit Server2GO können Sie eine eigenständige Arbeitswebsite oder eine PHP-Anwendung auf einer CD-ROM erstellen.

Es ist sehr schön.

Andere Tipps

Ähnlicher Thread hier:Tragbarer USB -Webserver

Wenn du mich fragst, Xampp sollte tun, weil es a bietet "einfach Unzipp" Ausführung. Es gibt viel Abwechslung da draußen - Bitnami bietet auch eine schöne Gruppe von Stapeln, obwohl sie für diese spezielle Aufgabe möglicherweise nicht gut sind.

Um dieselben Skripte sowohl in Windows als auch in Linux zu behalten, können Sie berücksichtigen Verwendung Unxutils Dies ist ein Port aller gemeinsamen Linux -Befehle. Dies wird sehr praktisch sein, wenn Sie es sind Gut bei Linux Bash Shell Scripting, aber nicht gut in Windows -Batch -Dateien.

Der Schutz des Quellcodes ist etwas problematisch. Machst du wirklich, Ja wirklich Müssen Sie dies tun? Weil es eine Menge großer Open -Source -Code gibt, die in den meisten gängigen Geschäftsbereichen bereits praktisch alles erledigen - SourceForge.net.

Und wenn jemand Ihren Code nimmt und ihn seinen eigenen nennt, können Sie sie einfach im Internet benennen, wenn Sie ihn beweisen können. Das selbst wird für sie eine schlechte Werbung sein. Das heißt, ich kenne natürlich nicht Ihr spezifisches Bedürfnis. Das ist also nur meine Meinung.

Sie werden Probleme damit haben, egal wie Sie vorgehen. Jeder Schritt ist etwas ungewöhnlicher, wie es scheint.

Sie müssen einen Defuscator für den Quellcode verwenden, um Ihre Quelle zu schützen. Ich empfehle das von Zend, nicht aus Erfahrung, sondern weil Zend großartige Produkte herstellt. Ich habe nie selbst einen Quellschutz verwendet.

Sie benötigen drei benutzerdefinierte Lampen/MAMP/XAMP -Installationen, eine für jedes Zielbetrieb. Sie sollten auf ein Verzeichnis verweisen, das auf dem USB -Laufwerk geteilt wird. Stellen Sie sicher, dass Sie sie so konfigurieren, dass Sie einen ungeschützten Port verwenden. Andernfalls benötigt der Benutzer Admin -Berechtigungen, um die Serversoftware auszuführen. Und das Einschalten des Servers wird wahrscheinlich auch zu einigen Schluckaufs führen.

Ich würde tatsächlich empfehlen, etwas zu finden, mit dem Sie eine Binärdatei oder eine Air -App verteilen können, die für diese Art von Verteilung bestimmt ist. Möglicherweise müssen Sie viel Code umschreiben, aber es ist einfacher zu beheben als alle Probleme mit kleinen Installationsfehlern, die Sie am Client -Ende sehen werden. Um Skripte in Binärdateien zu verpacken, ohne Dinge neu zu schreiben, schauen Sie sich an http://www.scriptol.com/apollo.php und ähnliche Produkte.

Aber ich würde vorschlagen, dass Sie eine eigenständige App in Adobe Air erstellen, die mit Ihrem Server synchronisiert wird (möglicherweise sogar eine Google Gears -Integration, damit sie offline funktionieren). Versuchen Sie nicht, eine PHP -App in dieses Verteilungsmodell zu zwingen, es wird albtraumhafte Probleme verursachen.

Sie können MAMP für Mac verwenden. Sie müssen nur die Konfiguration bearbeiten, um das Sites -Verzeichnis ordnungsgemäß zu verweisen.

Sie hätten jedoch das Problem, dass die MySQL -DB nicht unbedingt mit Windows funktionieren würde. Wenn Sie die DB auf SQLite umgestellt haben, können Sie die SQLite -DB -Datei ziemlich einfach synchronisieren.

XAMPP würde für die Windows -Seite funktionieren

Tut mir leid nicht über die Linux -Seite.

Es gibt einen CakePhp Instaweb Server

http://bakery.cakephp.org/articles/view/the-cakephp-instaweb-webserver

Das läuft auf Python und benötigt keine Installation. Dies plus einige zusätzliche Leckereien sollten Sie bereits halb so weit bringen.

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