2010-11-16 206 views
0

我最近开发了一个catalyst应用程序,我现在想部署。 我的主机(OVH)允许通过mod_cgi的perl应用程序。 不幸的是,我习惯在mod_perl上运行我的催化剂应用程序。 我对mod_cgi没有任何经验,我似乎无法找到关于如何让我的催化剂应用程序在mod_cgi上运行的良好文档。Catalyst + mod_cgi

你们有些人可以帮我一把吗? 您有没有人曾经在OVH的服务上运行催化剂应用程序?

感谢, LDX

+0

只是mod_cgi一样,不是的mod_fastcgi? – ysth 2010-11-16 09:13:36

+0

不,只是mod_cgi。 – ldx 2010-11-16 09:40:45

+1

没有什么困难的,但要为页面点击做好准备,对于非常简单的应用程序需要几秒钟,对于复杂的应用程序可能需要10秒钟。催化剂不是*旨在非持续运行。 – hobbs 2010-11-16 12:21:16

回答

2

Catalyst::Engine::CGI是你必须要看的基本模块。如果你的Catalyst代码是后端不可知的,你应该能够将它放在你的基本应用程序中,创建一个CGI文件,通过它你可以运行整个应用程序,这一切都将起作用。

尽管CGI环境会比fastcgi甚至mod_perl慢得多。

+0

谢谢,这已经很有帮助。任何关于如何创建这样一个CGI文件的指针? – ldx 2010-11-16 09:41:51

+0

阅读链接?它在简介中... – mfontani 2010-11-16 12:50:56

3

catalyst.pl创建CGI程序。

Foo-Bar> cd .. 
> catalyst.pl -scripts Foo::Bar 
> ls Foo-Bar/scripts/ 

为催化剂5.8,Foo-Bar/scripts/foo_bar_cgi.pl排除POD的代码如下所示:

#!/usr/bin/env perl 
use Catalyst::ScriptRunner; 
Catalyst::ScriptRunner->run('Foo::Bar', 'CGI'); 

1;