플랙(소프트웨어)

Plack (software)
플랙
원저작자미야가와 다쓰히코
개발자미야가와 타츠히코, 마츠노 토쿠히로, 제시 루어스, 토마스 도란, 그레이엄 노프 등.
기입처
면허증.Perl 라이선스(Artistic License v2 + GNU General Public License v1)
웹 사이트plackperl.org
Perl, Plack 및 PSGI를 사용한 서버측 스크립트의 예.

Plack은 Rack for Ruby 및 WSGI for [1][2]Python에서 영감을 받은 Perl 애플리케이션 프로그래밍 프레임워크로 Catalyst 및 [3]Dancer같은 다른 프레임워크에서 사용되는 PSGI 사양의 배후에 있는 프로젝트입니다.Plack을 사용하면 라이브 웹 [4]서버 없이 Perl 웹 응용 프로그램을 테스트할 수 있습니다.

Plackup은 명령줄에서 [5]PSGI 애플리케이션을 실행하기 위한 명령줄 유틸리티입니다.

PSGI

PSGI 또는 Perl Web Server Gateway Interface는 웹 서버와 웹 애플리케이션 간의 인터페이스 및 Perl 프로그래밍 언어로 작성된 프레임워크로, 스탠드아론 서버 또는 CGI, FastCGI, mod_perl [6]등을 사용하여 실행할 수 있는 휴대용 애플리케이션을 쓸 수 있습니다.Python용 Web Server Gateway Interface, Rack for Ruby 및 JSGI for JavaScript에서 영감을 받았습니다.PSGI 응용 프로그램은 인수를 단일 해시 참조로 받아들이고 HTTP 상태 코드, HTTP 헤더 배열 참조 및 HTTP 본문 라인 배열(일반적으로 생성된HTML 문서) 또는 파일 핸들 유사 개체에 대한 참조의 3가지 요소로 구성된 배열에 대한 참조를 반환하는 Perl 서브루틴입니다.

지원되는 백엔드

2010년 3월[7] 현재 Plack은 다음 서버 백엔드를 지원하고 있습니다.

기본 스탠드아론 HTTP 서버 사용:

$ plackup app.psgi HTTP:: 서버::PSGI: http://0:5000/에서 연결을 수락합니다.

Unix 소켓에서 FastCGI 데몬으로 실행되며 FastCGI를 지원하는 모든 웹 서버에서 사용할 수 있습니다.

$plackup - s FCGI - listen / tmp / fcgi.sock app.psgi Fast CGI: 매니저(pid 3336): 초기화Fast CGI: 매니저(pid 3336): 서버(pid 3337)가 시작됨Fast CGI: 서버(pid 3337): 초기화됨

작동하는 Hello world 응용 프로그램은 단일 라이너로 실행됩니다.

$plackup - e 'sub { [ 200 , [ " Content - Type " = > " text / sub " , [ " Hello , world " ]] } ' HTTP :: 서버::PSGI: http://0:5000/에서 연결을 수락합니다.

의 명령어는 모든 로컬인터페이스(IP 주소)의 포트 5000에서 HTTP 서버를 리슨하여 HTTP 요구마다 다음 200 OK 응답을 반환합니다.

HTTP/1.0 200 확인 날짜:2010년 3월 19일 (금)23:34:10 GMT 서버: HTTP:: 서버::PSGI 콘텐츠 타입: 텍스트/플레인 콘텐츠 길이: 13 Hello, World! 

레퍼런스

  1. ^ Poe, Curtis (2012). Beginning Perl. John Wiley & Sons. p. 484. ISBN 9781118235638. Retrieved 29 October 2018.
  2. ^ http://plackperl.org
  3. ^ Quigley, Ellie (2014). Perl by Example. Pearson Education. p. 586. ISBN 9780133760811. Retrieved 29 October 2018.
  4. ^ Chromatic (2015). Modern Perl (Fourth ed.). The Pragmatic Programmers, LLC. p. 134. ISBN 978-1-68050-088-2.
  5. ^ "plackup - search.cpan.org". search.cpan.org. Retrieved 20 February 2016.
  6. ^ chromatic. "Web Application Development with Modern Perl". modernperlbooks.com.
  7. ^ 플랙: CPAN 상의 핸들러 모듈

외부 링크