2

我正在按照 Dancer::Deployment 中编写的说明运行 Perl Dancer 框架,以作为 cgi 脚本运行。这允许我显示“/”路由的默认页面,但除此之外我似乎无能为力。例如,假设我想请求http://localhost/myroute 之类的东西,并由 '/myroute' 路由处理程序处理。我将如何解决这个问题?

我正在使用 apache 的 mod_rewrite 来指导我的请求。目前,如果我尝试上述方法,我最终会收到一条消息,例如“在此服务器上找不到请求的 URL /cgi-bin/dancer.cgimyroute”。下面是我的.htaccess 的内容。

<IfModule mod_rewrite.c>    
  RewriteEngine On
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)$ /cgi-bin/dancer.cgi$1 [QSA,L]
</IfModule>

我正在使用 Dancer 1.3030 在 Windows XP 上运行 Apache 2.2。我明白为什么我会收到我收到的错误消息。我正在寻找的是一些用于处理“/myroute”路由的示例代码,也许还有一些关于我应该对我的 .htaccess 文件进行的任何修改的建议。

4

1 回答 1

2

配置需要/after dancer.cgi

<IfModule mod_rewrite.c>    
  RewriteEngine On
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)$ /cgi-bin/dancer.cgi/$1 [QSA,L]
</IfModule>

感谢上面的昆汀。

于 2011-08-14T19:31:06.113 回答