Изменения

Перейти к: навигация, поиск

Платформы для запуска Perl веб-приложений

216 байтов добавлено, 21:28, 21 ноября 2014
Нет описания правки
* Интерфейс — CGI. В режиме '''nph''' — «Non-Parsed Headers» — то есть на STDOUT нужно выводить просто HTTP-ответ. Это устраняет часть интерфейсных ограничений CGI, сохраняя совместимость с CGI скриптами.
* Можно использовать стандартные модули Net::Server::'''xx''' для выбора поведения сервера — например, можно использовать как TCP, как и UNIX сокеты, можно создать prefork ({{CPAN|Net::Server::PreFork}} или {{CPAN|Net::Server::PreForkSimple}}) или мультиплексирующий однопоточный сервер ({{CPAN|Net::Server::Multiplex}}).
* Существует некоторое количество модулей для расширения данного сервера — в частности, для запуска приложений на некоторых фреймворках через HTTP::Server::Simple, например, для {{CPAN|Mason}}. Собственно, есть и вариант для запуска PSGI/Plack приложений.
* Модуль достаточно широко используется при тестировании веб-приложений, в качестве легковесного тестового сервера: {{CPAN|Test::HTTP::Server::Simple}}.
Победитель — однозначно {{CPAN|Plack}}. Он наиболее современный, простой и продуманный.
CGI — всё ещё жив, но безнадёжно устарел. Старые приложения, на нём написанные, нужно превращать либо превращать в FastCGI, либо превращать в HTTP::Server::Simple (последнее достаточно удобно и сделано в https://github.com/vitalif/bugzilla-4intranet), либо, на крайний случай, просто запускать через {{CPAN|FCGI::Daemon}}.
mod_perl — тоже популярен, хотя ни универсальностью, ни надёжностью от него не пахнет. «Perl и mod_perl — это разные языки».

Навигация