Вграден уеб сървър в PHP

Знаете ли, че 79.5% от всички уеб сайтове използват PHP, а 97.1% от всички, които използват PHP използват версия 5? Едни от най-популярните сайтове използващи PHP са Facebook, Wordpress и Wikipedia. Ние от Friendly Geeks знаем, колко добре познавате PHP, но решихме да ви представим една малко известна негова функционалност, която може да ви спести доста време и усилия.

PHP

Ако сте уеб разработчик и се занимавате с някакъв вид програмен език език, то знаете колко много усилия и време изисква да накарате кода си да тръгне, ако нямате налична среда за това (хостинг акаунт, собствен сървър или уеб сървър на компютъра ви), като изключим разработката. Преди, когато използвахте PHP, беше необходимо да инсталирате уеб сървър, да настроите уеб хост, да добавите DNS запис за всеки проект и да се уверите, че уеб сървърът ви изпраща и получава данни от PHP интерпретатора. Чак тогава, щяхте да можете да пуснете кода си в действие.

Сега пред вас стои нова възможност, която значително ще ви улесни! PHP 5.4, следвайки и останалите програмни езици вече има вграден HTTP сървър! Ако имате инсталиран PHP 5.4 или по-висока версия, само с една команда можете директно да доставяте съдържание до браузъра. Ще ви дадем пример със следната команда:

php -S localhost:8000 -t foo/

Бързо и ефективно! Просто стартирайте това и foo/ ще заработи на сървъра на порт 8000. Без огромни кунфигурационни файлове, без виртуален хост, CGI или проблеми с достъпа. Това улеснение дава възможност да тестваме бързо кода си, без излишни настройки и конфигурации.

Предимството, което имате е, че можете да работите по множество проекти едновременно и да преминавате от един към друг проект бързо.

Да се върнем към горния пример. Ако искате да приключите работа по foo/ и искате да преминете към bar/ (примерни проекти) , просто изключете вече активирания сървър на foo/ и стартирайте нов на bar/ със следната команда:

php -S localhost:8000 -t bar/

Сега вашият вграден PHP сървър обслужва bar/! A ако искате вграденият сървър да обслужва и двата проекта по едно и също време, стартирайте нов терминал или във вече отворения прозорец използвайте нов порт:

php -S localhost:8000 -t foo/

php -S localhost:8001 -t bar/

По този начин foot/ ще използва порт 8000 а bar/ порт 8001. Допълнителното предимство тук е, че всеки от вашите проекти се обслужва през отделен порт, а не през различни хост имена и виртуални хостове. Това напълно изключва необходимостта да се занимавате с DNS, което е голямо улеснение за разработчиците.

Необходимо е само да настроите един тестов сървър с лесно запомнящо се хост име, като например dev.mydomain.com. Тогава всеки от вашите проекти ще се обслужва през различен порт, който ще можете да активирате с лесна и кратка команда.

dev.mydomain.com:8000 ще обслужва проекта foo/. В същото време dev.mydomain.com:8001 ще обслужва bar/.

php 5.4

Функцията за вграден сървър в PHP съществува от почти година, но по наши наблюдения малко хора я използват. Още повече, че не съществуват никакви недостатъци, ако направим сравнение между вградения PHP сървър и apache HTTP сървър например. Но трябва да сме на наясно, че този уеб сървър е за предпочитане когато искате да тествате кода си, но не и за изграждане на натоварени уеб сайтове в продуктивна среда.

Етикети: #virtualen-host #sarvar #php-5-4 #testov-sarvar #vgraden-php-sarvar #ueb-host #php-interpretator #ueb-sarvar #apache-http-sarvar #sajt #php #port #dns-zapis #ueb-sajt #friendly-geeks