为什么Nginx不能POST到我的Perl后端?

编辑:所以我发现GET方法确实有效,但POST方法不起作用!这可能很重要.

所以我在Debian Etch上运行Nginx. Nginx通常不提供cgi / pl文件,所以我按照指南让我的后端工作.

http://technotes.1000lines.net/?p=23

我的后端在Apache上工作正常,但我必须安装一个使用nginx(lib-www)的模块.

它现在有效,但由于某种原因,POST / GET方法不起作用….举个例子,我的后端设置为在网址中接受产品SKU,它只是在你做的时候将它添加到购物车.现在,如果我直接用这个附加值输入这个url,它工作正常,将它添加到购物车,一切都很好….

但是,当我将产品添加到购物车时,我的所有产品页面都会设置为提交到我的后端.它提交了我可以在我的浏览器窗口中键入的完全相同的值,除了它不起作用(与仅在我的url栏中输入它有效)相反.

现在我在想我正在使用的perl包装器代码有点不对或什么?是这里:

http://technotes.1000lines.net/fastcgi-wrapper.pl

我只进行了一些更改…我只是创建了一个文件夹,它想要安装套接字(但也许它应该放在一个不同的文件夹中),而在我的nginx conf中我基本上是这样的:

location ~ ^/cgi-bin/.*\.pl${
  gzip off;
  fastcgi_pass  unix:/var/run/nginx/perl_cgi-dispatch.sock;
  fastcgi_param SCRIPT_FILENAME /www/blah.com$fastcgi_script_name;
  include fastcgi_params;
}

我的参数与文章中的相同,我只有默认的mime类型设置.关于为什么这不起作用的任何想法?我愿意提供您需要的任何额外信息.

解决方法:

这个特殊的fastcgi-wrapper.pl脚本由Denis S. Filimonov修改,以正确处理POSTS请求.您可以在以下网址阅读更多相关信息:http://www.ruby-forum.com/topic/145858

上一篇:Python,正在调用我的python模块


下一篇:关于nginx配置的一个报错connect() to unix:/tmp/php-cgi.sock failed (2: No such file or directory)