PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : XAMPP vs. VM für PHP-Programmierung



djaliced
21-08-2013, 10:05
Hallo,

folgendes Szenario:

1. Windows host mit XAMPP als Plattform (IDE jetzt mal außen vor) für PHP-Programmierung.

Oder

2. Unter Windows eine VM (VirtualBox oder ähnliches) einrichten mit LAMP als Gast. Dann die Entwicklung-Verzeichnisse per Samba freigeben und von Windows aus drauf zugreifen.

(Fall der Gedanke kommen sollte "Warum programmierst du nicht gleich unter Linux", nun ja, ich programmiere halt lieber unter Windows ist wohl mehr eine Gewohnheitssache.)

Ich kann mich einfach nicht direkt entscheiden und ich stelle mir seit geraumer Zeit die Frage - "Welche Lösung wohl die bessere ist bzw. welche Vor- und Nachteile es bei den einzelnen Varianten wohl gibt."

Aber auf einen direkten Vergleich im Netz bin ich noch nicht gestoßen. Ich habe bis jetzt immer nur kurze Infos gelesen, wie beispielsweise "XAMPP ist zu unsicher da es nur zum entwickel gedacht ist" oder "VM-LAMP dauert doch viel zu lange zum einrichten" oder ähnliches. Dies war für mich bis jetzt kein richtiger Vergleich.

Welche Lösung findet ihr besser bzw. warum findet ihr die andere Lösung für nicht so gut. ;)

Noch zur Info, der Produktionsserver ist später ein Linux-Maschine.

Gruß Olly

anda_skoa
21-08-2013, 12:47
Eine VM ist natürlich immer ein gewisser Overhead, hat in deinem Fall aber den zusätzliche Vorteil, dass du schon während der Entwicklung die Laufzeitumgebung des Produktivsystems hast (gleiche Versionen der gleichen Software, usw.)

Das kann besonders beim Window/Unix Unterschied auch ärgerliche Kleinfehler vermeiden helfen.

Zum Beispiel. dass der Code eine Datei "image.png" erwartet aber man irrtümlichweise unter Window die Datei "Image.png" genannt hat.

Wenn der Testhost auch Windows ist, hat er damit kein Problem (weil das Windowsdateisystem keine Groß-/Kleinschreibung beachtet), dann am Produktivsystem klappts nicht mehr.

Ciao,
_

djaliced
21-08-2013, 13:17
Naja den Overhead bei einer VM ist mir dabei relativ egal.

Ich habe heute sogar noch einen anderen Ansatz gehört und zwar folgenden:
1. Entwicklung unter Windows mit XAMPP
2. Getestet in einer VM mit LAMP
3. Dann auf den Produktiv-Server deployed.

Als Argument kam dann, dass solche Sachen wie GIT oder ZendFramework etc. alles local auf den host laufen kann und der Unterschied zwischen Windows und Linux per PHP nicht all zu groß ist und sich Fehler in der Testumgebung sehr schnell beseitigen lassen.
Ist da was dran?

Okay, wenn ich gleich eine VM benutze, dann kann ich die auch gleich als Testsystem mit konfigurieren und hätte dann gleich noch weniger Probleme, das ist wohl wahr.

cu

anda_skoa
22-08-2013, 08:59
Ich denke eine VM für Deployment- und Ugradetests brauchst du ohnehin.

Vermutlich kann man auch mit dem anderen Ansatz gut arbeiten :)

Ich persönlich würde sogar im Falle eine Linuxworkstation eine VM benutzen, weil sich dann die ganzen serverbezogenen Sachen schnell und schmerzlos ein-/ausschalten lassen und mein System nicht "zumüllen".

Ciao,
_

djaliced
22-08-2013, 21:57
Ich habe jetzt folgende Lösung für mich gefunden...

- Programmieren werde ich "doch" unter Linux mit verschiedenen XAMPP-Plattformen (verschieden PHP-Versionen etc.). Die Konsolen/Shells gefallen mir "hier" einfach besser. ;)
- VMs (VirtualBOX, da ich hier mehrere VMs laufen lassen kann) für Test - Upgrade - Deploy etc.

Danke noch mal für die Denkanstöße.

LG Olly