Пластина (программное обеспечение)
Оригинальный автор (ы) | Тацухико Миягава |
---|---|
Разработчик (ы) | Такхамик и большинство, чтобы гастролировать, Хуре, Ток, Топра. |
Написано в | Перв |
Лицензия | Лицензия PERL (художественная лицензия v2 + GNU General Public Public License v1) |
Веб -сайт | Плакперл |

PLACK - это Perl, программа программирования веб -приложений вдохновленная Rack для Ruby и WSGI для Python , [ 1 ] [ 2 ] И это проект, лежащий в основе спецификации PSGI , используемых другими рамками, такими как катализатор и танцор . [ 3 ] Plack позволяет тестировать веб -приложения Perl без живого веб -сервера. [ 4 ]
Plackup - это утилита командной строки для запуска приложений PSGI из командной строки. [ 5 ]
PSGI
[ редактировать ]Интерфейс шлюза PSGI или Perl Web Server - это интерфейс между веб -серверами и веб -приложениями и фреймворками , записанными на языке программирования PERL , который позволяет записывать портативные приложения, которые можно запускать в качестве автономных серверов или с использованием CGI , FastCGI , Mod_perl , et al. [ 6 ] Он вдохновлен интерфейсом шлюза веб -сервера для Python , Rack для Ruby и JSGI для JavaScript . Приложение PSGI - это подпрограмма PERL , которая принимает аргументы в качестве единой хеш -ссылки и возвращает ссылку на массив из трех элементов: код состояния HTTP , ссылку на массив заголовков HTTP и ссылку на массив линий тела HTTP ( Обычно сгенерированный HTML -документ) или файл , похожий на объект .
Поддерживаемые бэкэнды
[ редактировать ]С мая 2023 года [update][ 7 ] Plack поддерживает следующие серверы:
- CGI
- SCGI
- Fastcgi
- MOD_PERL в Apache 1.3 и 2.0
- Автономный HTTP -сервер, включенный в плак
- Http :: server :: simple
- Корона
- Старман
- Твигги
- AnyEvent :: httpd
- Агент :: revershtt
Примеры
[ редактировать ]Использование автономного HTTP -сервера по умолчанию:
$ plackup app.psgi
HTTP::Server::PSGI: Accepting connections at http://0:5000/
FastCGI Запуск как Daemon Daemon в сокете UNIX , готов к использованию любым веб -сервером с поддержкой FastCGI :
$ plackup -s FCGI -listen /tmp/fcgi.sock app.psgi
FastCGI: manager (pid 3336): initialized
FastCGI: manager (pid 3336): server (pid 3337) started
FastCGI: server (pid 3337): initialized
Рабочая приложение Hello World работает как однострочная :
$ plackup -e 'sub { [200, ["Content-Type" => "text/plain"], ["Hello, world!"]] }'
HTTP::Server::PSGI: Accepting connections at http://0:5000/
Приведенная выше команда запускает HTTP -сервер, прослушивающий порт 5000 каждого локального интерфейса ( IP -адрес ) и возвращает этот ответ 200 OK в каждый HTTP -запрос :
HTTP/1.0 200 OK
Date: Fri, 19 Mar 2010 23:34:10 GMT
Server: HTTP::Server::PSGI
Content-Type: text/plain
Content-Length: 13
Hello, world!
Ссылки
[ редактировать ]- ^ По, Кертис (2012). Начало Perl . Джон Уайли и сыновья. п. 484. ISBN 9781118235638 Полем Получено 29 октября 2018 года .
- ^ «PSGI/Plack - Perl SuperGlue для веб -фреймворков и веб -серверов» . plackperl.org . Получено 9 сентября 2023 года .
- ^ Квигли, Элли (2014). Perl по примеру . Пирсон Образование. п. 586. ISBN 9780133760811 Полем Получено 29 октября 2018 года .
- ^ Chromatic (2015). Современный Perl (четвертое изд.). Pragmatic Programermers, LLC. п. 134. ISBN 978-1-68050-088-2 .
- ^ Plasckup - metaclsan.org " Metacpan.org Получено 30 мая
- ^ хромат. «Разработка веб -приложений с современным Perl» . ModernPerlBooks.com .
- ^ Доска :: Модули обработчика на CPAN
Внешние ссылки
[ редактировать ]