Gibt es einen einfachen PHP-Entwicklungsserver? [geschlossen]

77

Wenn Sie Web-Apps in Python schreiben, ist es kinderleicht, einen Entwicklungsserver auszuführen. Django und Google App Engine (GAE) werden beide mit einfachen Servern geliefert.

Das Hauptmerkmal, das ich suche, ist keine Konfiguration. Ich möchte so etwas wie den GAE-Entwicklungsserver, bei dem Sie beim Starten des Servers einfach das Verzeichnis der App als Parameter übergeben.

Gibt es einen Grund, warum dies mit PHP schwieriger ist?

mdashx
quelle

Antworten:

14

Verwenden Sie XAMPP: http://www.apachefriends.org/en/xampp.html Es ist einfach zu installieren und zu konfigurieren.

BEARBEITEN:
Seit PHP 5.4 (das 2 Jahre nach dieser Antwort veröffentlicht wurde) gibt es einen eingebauten Webserver. Heute ist dies ungenau, bitte verwenden Sie die von k0pernikus in seiner Antwort bereitgestellte Methode.

Affen junge
quelle
2
Ich wäre glücklicher, wenn ich Apache nicht ausführen müsste, aber das sieht so aus. Derzeit verwende ich Nginx / MySQL, aber ich berühre es nur alle paar Monate, sodass ich keine Lust habe, irgendetwas zu konfigurieren.
Mdashx
2
Dies sollte nicht die akzeptierte Antwort sein. PHP-S ist das, was er wollte und Sie schlagen vor, eine voll funktionsfähige Webserver-Suite mit Datenbank und allem zu installieren.
Sgohl
1
@roothahn zum Zeitpunkt der Antwort war die neueste PHP-Version 5.3.3. Diese Version hatte keinen eingebauten Webserver. Ich stimme Ihnen heute zu, aber der Entwickler-Server ist erst 2 Jahre nach dieser Antwort eingetroffen. Ich habe dies vor fast 3 Jahren in den Kommentaren der höchsten Antwort klar angegeben.
Monkeyboy
210

Tatsächlich hat PHP 5.4.0 kürzlich seinen integrierten Webserver vorgestellt :

cd ~/public_html
php -S localhost:8000
HBv6
quelle
9
Nun, zum Zeitpunkt meiner Antwort gab es das noch nicht, aber es ist eindeutig der bessere Weg, das Problem zu lösen.
Monkeyboy
7
Dies sollte die neu akzeptierte Antwort sein.
Alphaaa
1
Stimme Alphaa voll und ganz zu. Dies ist verdammt viel einfacher als die Installation von LAMP / XAMPP.
IcyFlame
-tum den Dokumentstamm (relativen Pfad) festzulegen, wenn Sie dies vom cwd Ihres Projekts ausführen möchten. Zum Beispiel, wenn Sie einen Erstellungsprozess hatten, der den öffentlichen Browser-Code in einen ./dist/Ordner php -S localhost:8000 -t dist
ausgab
21

Wenn dies auf einer beliebigen Plattform möglich ist, verfügt PHP 5.4 über einen Django-ähnlichen Entwicklungsserver .

Möglicherweise möchten Sie auch das Snippet verwenden, mit dem ich den Entwicklungsserver erkenne und die beiden häufigsten Verwendungen von mod_rewrite repliziere. (Verstecken index.phpvon URLs und Weiterleiten statischer Dateien zur Zustellung)

(Ja, dafür gibt es einen integrierten Befehlszeilenschalter, der jedoch nicht ganz mit dem von den meisten Benutzern verwendeten mod_rewrite-Snippet übereinstimmt und aufgrund dieser Nichtübereinstimmung falsche 404-Fehler verursacht hat.)

ssokolow
quelle
8

Versuchen Sie es mit Batch - Datei

  1. Notizblock öffnen
  2. PHP-S Localhost: 8000
  3. Datei als .bat-Erweiterung speichern => server.bat
  4. Klicken server.batSie nun auf , Ihr Server ist unter http: // localhost: 8000 bereit .

DEP

Wenn Sie einen Fehler erhalten haben, gehen Sie zu php not recognize any internal or external command Umgebungsvariable und bearbeiten Sie den Pfad zu php.exe

"C:\wamp\bin\php\php5.4.3"
Nishchit Dhanani
quelle
7

Update: Ich habe eine Docker-basierte Version entwickelt, die ich anstelle von easy_php_dev: localdev verwendet habe

easy_php_dev macht die Entwicklung von PHPs mit mehreren Standorten sehr einfach und schnell. Die einzige Einschränkung ist, dass es nur für OSX entwickelt wurde. Offenlegung: Ich bin der Autor.

ctcherry
quelle
5

Wenn ich einen schnellen PHP-Webserver für lokale Tests benötige, verwende ich QuickPHP

Bewahrer
quelle
3
Dies scheint nur Windows zu sein.
n0pe
5

Wir haben einen sehr kleinen Entwicklungsserver entwickelt, der sich ähnlich wie der Django-Entwicklungsserver verhält.

Die Software heißt sng und arbeitet mit PHP und Nginx. Es ist in Javascript und NodeJS erstellt , Sie können es sehr einfach mit npm installieren:

npm install sng
fe_lix_
quelle
2

AppServ hat immer alles eingerichtet, was Sie brauchen!

Feuer
quelle