Autor wpisu: singles, dodany: 04.08.2011 19:28, tagi: internet, php, zend_framework, apache
Obecnie, aby odpalić jakąkolwiek aplikację WWW napisaną w PHP potrzebujemy serwera WWW. Może być to Apache czy też nginx. Jednakże, czasami chcielibyśmy skorzystać z czegoś lekkiego, bez ogromnych możliwości konfiguracyjnych jakie oferują nam produkcyjne serwery WWW. M.in właśnie dlatego w przypadku Django czy też RubyOnRails wykorzystywane są serwery deweloperskie, dzięki którym bardzo szybko można „postawić” lokalnie działającą aplikację.
PHP w wersji 5.4 ma posiadać wbudowany serwer developerski, ale dzięki temu że z sieci można pobrać i samodzielnie skompilować wersję alpha2, nie omieszkałem tego uczynić i na własnej skórze przetestować to rozwiązanie. Poniżej przedstawiam wyniki mojego małego R&D.
Instalacja
Procedurę instalacji przedstawię na przykładzie systemów POSIXowych.
Najpierw pobieramy archiwum z PHP w wersji alpha2. Następnie rozpakowujemy je, przechodzimy do wypakowanego folderu i kompilujemy. Krótki przewodnik jak skompilować PHP znajdziecie na Wikibooks. Od siebie dodam, że w tym wypadku nie zależy nam na dodatkowej kompilacji PHP jako modułu Apache’a, skoro plik wykonywalny PHP sam sobie będzie serwerem :)
Dodatkowo, domyślnie używam PHP 5.3.6, a wykonując make install
ryzykowałem trochę namieszania w systemie, tak więc pominąłem ten krok. Jeśli nie będziecie używać żadnych bibliotek PEARa wystarczy Wam gotowy skompilowany plik, który znajdziecie w katalogu sapi/cli
.
Dla upewnienia znajdując się w ww. katalogu wydajemy polecenie: ./php -v
aby upewnić się co do wersji interpretera.
Uruchomienie
Aby uruchomić najprostszy skrypt, w dowolnym(!) miejscu systemu plików tworzymy katalog, gdzie znajdzie się nasza aplikacja, a tam tworzymy prosty plik index.php
, powiedzmy z taką zawartością:
<?php $action = filter_input(INPUT_GET, 'action', FILTER_SANITIZE_STRING); switch ($action) { case 'foo': echo 'Foo action'; break; case 'bar': echo 'Bar action'; break; default: echo 'Main action'; } ?>
Następnie kopiujemy skompilowany wcześniej plik wykonywalny PHP do utworzonego właśnie katalogu. Można oczywiście podlinkować go i używać globalnie w całym systemie, ale jak pisałem, w moim przypadku nie chciałem namieszać.
Serwer odpalamy poprzez wydanie komendy:
Penny:public singles$ ./php -S localhost:1234