CGIãPlackã§éçº(2) åã®ã¨ã³ããªæ¸ãããå®®å·ããã«ãªã¹ã¹ã¡æ¹æ³ãæãã¦ããã£ã http://twitter.com/miyagawa/status/10271128928plackup \    -L Shotgun    -MPlack::App::WrapCGI    -e 'Plack::App::WrapCGI->new(script => "/path/to/cgiscript.cgi")' ã ããã§ãï¼ãããªãå ¨ã¦ã®è¦ä»¶ãæºããããããï¼ããã¦app.psgiãä½ãå¿ è¦ããã¾ããã ä»ãããã£ã¦ã¿ã¦ä¸ã¤ã ãåé¡ç¹ãå¤åPODå ¥ãã®CGIã¯åããªããããã¨ã__DATA__ã¯è¦ã¦ããããã©ã__END__ãããã¨åããªãã__END__ãã£ãç°¡åãªãããã®pull requestãéã£ã¦ããã¾ããï¼ ã«ãã´ãª éçº ã¿ã° cgi perl plack 2
Perl Web Server Gateway Interface ä»æ§ã«é¦´æãã§ã¿ããã¨ãCGI ã¹ã¯ãªãããã PSGI ã§ã³ã¼ãã»ãªãã¡ã¬ã³ã¹ãå¼ã³åºã CGI::Joint ã試ãã«ä½ã£ã¦ã¿ã¾ããã run ã¯ã©ã¹ã¡ã½ããã«ã³ã¼ãã»ãªãã¡ã¬ã³ã¹ã渡ãã¾ããrun ã¡ã½ããã¯æ¨æºå ¥åãæ¨æºã¨ã©ã¼åºåãç°å¢å¤æ°ãã PSGI äºæã®ããã·ã¥ã»ãªãã¡ã¬ã³ã¹ãä½ã£ã¦ãã³ã¼ãã»ãªãã¡ã¬ã³ã¹ãå¼ã³åºãã¾ããã³ã¼ãã»ãªãã¡ã¬ã³ã¹ãè¿ãé åãªãã¡ã¬ã³ã¹ããã§ãã¯ãã¦ããããã¨ããã£ãæ¨æºåºåã«æ¸ãåºãã¾ããã¨ã©ã¼ãæ¤åºããã¨ããããã©ã«ãã§ã¯ã¹ã¿ã¼ã¿ã¹ 500 ã§ãã©ã³ã¯åç¶ã® html ããã©ã¦ã¶ã«è¿ãã¾ãã$CGI::Joint::FatalsToBrowser ãçã®ã¨ãã¯ã$EVAL_ERROR ããã©ã¦ã¶ã«è¿ãã¾ãã ä¸ã®ã¹ã¯ãªããã Apache ã® ExecCGI å±æ§ããªã³ã«ãªã£ã¦
ã¤ã³ãããã¯ã·ã§ã³ Webã§åçã«ã³ã³ãã³ããä½ãä»çµã¿ã¨ãã¦ãCGIï¼Common Gateway Interfaceï¼ããã使ããã¦ãã¾ãããµã¼ãã¬ãããªã©ãæµè¡ã£ã¦ãã¾ãããç§ã¯CGIã好ãã§ããåç´ã§ããããããããä»æ§ãæ¯ãã¦ããããã§ããããã§ã¯ãCGIã¹ã¯ãªãããCè¨èªã使ã£ã¦å®è£ ããæ¹æ³ã«ã¤ãã¦æ¸ãã¦ã¿ã¾ãã ã¨ããã§ãCGIã¯ã¤ã³ã¿ã¼ãã§ã¤ã¹ã®è¦ç´ã«éããªãã®ã§ããCGIãå®è£ ãããã¨ããã¨ãWebãµã¼ãã«CGIã¹ã¯ãªãããå¼ã³åºãæ©è½ãã¤ããã¨ãããã¨ã«ãªã£ã¦ãã¾ãã¾ããããã§ç´¹ä»ãããCGIãä»ãã¦å¼ã³åºãããããã°ã©ã ã¯ãCGIã¹ã¯ãªãããã¨å¼ã°ãã¾ããééã£ã¦ããã俺ãCGIä½ããããã¨å ¬è¨ããã®ã¯ããã¾ããããã¨ã¯ããã社ä¼çæ´»ã«ããã¦ãã®ãããªè¶£æ¨ã®çªã£è¾¼ã¿ãå ¥ããã¨å«ãªé¡ããããã¨ããããã§ãã ã¹ã¯ãªããã¨ããããããªã®ã§ãCGIã¹ã¯ãªãããå®è£ ããã®ã«ã¯
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}