Perl 为什么我的catalyst应用程序运行Apache+;FastCGI不提供动态内容?

Perl 为什么我的catalyst应用程序运行Apache+;FastCGI不提供动态内容?,perl,apache2,catalyst,Perl,Apache2,Catalyst,我正在尝试使用Apache和fastcgi运行我的第一个PerlCatalyst应用程序 启动服务器很好,我可以看到应用程序的主页。所有图像/Java脚本都已正确加载(因此,我假设静态内容已正确提供) 出于我不理解的原因,动态内容给了我一个404:例如,当试图转到www.webapp.org/search时,我得到“请求的URL/search在此服务器上找不到” 好的,下面是我如何为静态内容和 Alias /static /webapp/root/static/ Alias / /webapp/

我正在尝试使用Apache和fastcgi运行我的第一个PerlCatalyst应用程序

启动服务器很好,我可以看到应用程序的主页。所有图像/Java脚本都已正确加载(因此,我假设静态内容已正确提供)

出于我不理解的原因,动态内容给了我一个404:例如,当试图转到www.webapp.org/search时,我得到“请求的URL/search在此服务器上找不到”

好的,下面是我如何为静态内容和

Alias /static /webapp/root/static/
Alias / /webapp/script/webapp_fastcgi.pl
我将documentroot设置为

DocumentRoot /webapp/
此外,我还有一个

 <Location />
     Options +ExecCGI 
     Order allow,deny
     Allow from all
     AddHandler fcgid-script .pl
 </Location>

选项+执行CGI
命令允许,拒绝
通融
AddHandler fcgid script.pl
还有一个指令

<Files /webapp/script/webapp_fastcgi.pl> 
    PassEnv PERL5LIB 
    SetHandler fastcgi-script
</Files>

PassEnv PERL5LIB
SetHandler fastcgi脚本
配置文件中没有其他内容

如何添加指令以允许提供动态内容(www.webapp.com/search)


提前多谢

我在AddHandler部分中看到一个空格。请检查您的配置文件是否有打字错误

AddHandler fcgid-script .pl
此外,如果您尚未阅读,请阅读以下内容:

对于开发工作,您可以使用catalyst而无需apache的麻烦:

假设apxs将mod_fastcgi.so安装到/usr/local/apache/libexec中,将以下内容添加到apache.conf文件中:

LoadModule fastcgi_module libexec/mod_fastcgi.so
<IfModule mod_fastcgi.c>
  FastCgiExternalServer /tmp/myapp.fcgi -host myhost:8081
  Alias /myapp/    /tmp/myapp.fcgi/
</IfModule>
LoadModule fastcgi\u module libexec/mod\u fastcgi.so
FastCgiExternalServer/tmp/myapp.fcgi-主机myhost:8081
别名/myapp//tmp/myapp.fcgi/

可能对您有所帮助您使用的是fcgi还是fastcgi?您的标题是FastCGI,但在Apache配置中,您的标题是“AddHandler fcgid script.pl”。我使用的是FastCGI。如果我用AddHandler fastcgi script.pl替换(在位置)AddHandler fcgid script.pl,它将不再显示网站,但我的浏览器会下载“webapp_fastcgi.pl”文件