Plack (software) - Plack (software)
![]() | tento článek příliš spoléhá na Reference na primární zdroje.únor 2013) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) ( |
Původní autoři | Tatsuhiko Miyagawa |
---|---|
Vývojáři | Tatsuhiko Miyagawa, Tokuhiro Matsuno, Jesse Luehrs, Tomas Doran, Graham Knop a další. |
Napsáno | Perl |
Licence | Licence Perl (Umělecká licence v2 + GNU General Public License v1) |
webová stránka | plackperl |

Plack je Perl programovací rámec webových aplikací inspirovaný Nosič pro Rubín a WSGI pro Krajta,[1][2] a je to projekt za PSGI specifikace používaná jinými rámci, jako je Katalyzátor a Tanečník.[3] Plack umožňuje testování webových aplikací Perl bez živého webového serveru.[4]
Plackup je obslužný program příkazového řádku spouštět aplikace PSGI z příkazového řádku.[5]
PSGI
PSGI nebo Rozhraní brány webového serveru Perl je rozhraní mezi webové servery a webové aplikace a rámce napsáno v Perl programovací jazyk, který umožňuje psaní přenosných aplikací, které lze spouštět jako samostatné servery nebo používat CGI, FastCGI, mod_perl, et al.[6] Je inspirován Rozhraní brány webového serveru pro Krajta, Nosič pro Rubín a JSGI pro JavaScript. Aplikace PSGI je Perl podprogram který přijímá argumenty jako jediný hash reference a vrátí odkaz na pole tří prvků: an Stavový kód HTTP, odkaz na pole Záhlaví HTTP a odkaz na pole linií těla HTTP (obvykle generovaný HTML dokument) nebo a pilník na ruce -jako objekt.
Podporované backendy
Od března 2010[Aktualizace][7] Plack podporuje následující back-endy serveru:
- CGI
- SCGI
- FastCGI
- mod_perl pod Apache 1,3 a 2,0
- Samostatný HTTP server zahrnutý v Plack
- HTTP :: Server :: Jednoduché
- Corona
- Hvězdný muž
- Twiggy
- AnyEvent :: HTTPD
- AnyEvent :: ReverseHTTP
Příklady
Pomocí výchozího samostatného serveru HTTP:
$ plackup app.psgiHTTP :: Server :: PSGI: Přijímání připojení na http: // 0: 5000 /
Běží jako FastCGI démon poslech na a Unix socket, připraven k použití kdokoli webový server s Podpora FastCGI:
$ plackup -s FCGI -listen /tmp/fcgi.sock app.psgiFastCGI: manažer (pid 3336): inicializovánoFastCGI: správce (pid 3336): server (pid 3337) spuštěnFastCGI: server (pid 3337): inicializováno
Pracovní Ahoj světe aplikace běží jako jedno-liniové:
$ plackup -e 'sub {[200, ["Content-Type" => "text / plain"], ["Hello, world!"]]}' 'HTTP :: Server :: PSGI: Přijímání připojení na http: // 0: 5000 /
Výše uvedený příkaz spustí HTTP server poslouchám dál přístav 5 000 každého místního rozhraní (IP adresa ) a vrátí toto 200 OK reakce na každého HTTP požadavek:
HTTP/1.0 200 OKdatum: Pá 19. března 2010 23:34:10 GMTServer: HTTP :: Server :: PSGITyp obsahu: text / prostýDélka obsahu: 13Ahoj světe!
Reference
- ^ Poe, Curtis (2012). Počínaje Perl. John Wiley & Sons. str. 484. ISBN 9781118235638. Citováno 29. října 2018.
- ^ http://plackperl.org
- ^ Quigley, Ellie (2014). Perl příkladem. Pearson Education. str. 586. ISBN 9780133760811. Citováno 29. října 2018.
- ^ Chromatic (2015). Moderní Perl (Čtvrté vydání). Pragmatičtí programátoři, LLC. str. 134. ISBN 978-1-68050-088-2.
- ^ „plackup - search.cpan.org“. search.cpan.org. Citováno 20. února 2016.
- ^ chromatický. „Vývoj webových aplikací s moderním Perlem“. modernperlbooks.com.
- ^ Plack :: Handler modules on CPAN