Jak uruchomić PHP z SimpleHTTPServer?

14

Właśnie znalazłem tę niesamowitą wskazówkę w Apple SE:

Uruchom szybki serwer WWW z dowolnego katalogu:

python -m SimpleHTTPServer 8000

Czy istnieje sposób, aby mieć te skrypty parsowania php, czy jest to tylko dla stron zawierających tylko HTML?

eykanal
źródło

Odpowiedzi:

16

Właśnie natrafiłem na tę odpowiedź z StackOverflow.

Zasadniczo serwer WWW Pythona nie jest domyślnie skonfigurowany do uruchamiania plików php, ale zamiast próbować rekonfigurować serwer WWW Pythona, możesz po prostu uruchomić serwer WWW php, który działa prawie dokładnie tak samo, jak prosty serwer HTTP Pythona, z

php [options] -S <addr>:<port> [-t docroot]

Przykład:

php -S 127.0.0.1:80 -t .

lub po prostu

php -S 127.0.0.1:80

aby użyć bieżącego katalogu roboczego.

Edycja: Zapomniałem wspomnieć, że konieczne jest uruchomienie tego jako root, jeśli musisz użyć portu 80, ale nie jest to konieczne, jeśli podasz wyższy numer portu, np. 8080. Dziękujemy za wskazanie, Mike Houston!

TheGuyWithTheFace
źródło
Podobno dobre rzeczy nie przychodzą do tych, którzy czekają :) Nawet nie uświadomić sobie php miał tę funkcjonalność. Dzięki!
eykanal
@eykanal To nowa funkcja w PHP 5.4. :-)
ceejayoz
1
Musisz uruchomić jako root, jeśli chcesz użyć portu 80, ale jeśli wybierzesz wyższy numer portu (np. 8080), powinieneś być w porządku jako standardowy użytkownik.
Mike Houston,
Nie wiedziałem, że domyślnie mamy php na OSX. To jest świetne.
Aero Windwalker
1
Warto również wspomnieć, że serwer WWW PHP służy tylko do celów programistycznych. Nie ma rozszerzonych funkcji powiedzmy apache .. Więc do programowania tak .. Dla witryn na żywo NIE!
Wściekły 84
3

Tak wywołana biblioteka pythonowa SimpleHTTPServer będzie obsługiwać tylko pliki i nie będzie interpretować PHP (ani python, jeśli o to chodzi). Możesz jednak sprawić, by serwował wszystko, co chcesz (w tym PHP - sprawdź CGIHTTPServer ) z jakimś niestandardowym owiniętym językiem .

Shane Madden
źródło
Tak więc, jako ktoś, kto nie zna ściegu pytona i tak naprawdę nie chce się go teraz nauczyć, odpowiedź brzmi „nie”?
eykanal
2
To „nie”, prawda.
Bill Weiss,