【问题标题】:Why can't Nginx POST to my Perl backend?为什么 Nginx 不能 POST 到我的 Perl 后端?
【发布时间】:2010-09-27 09:08:09
【问题描述】:

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

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

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

我的后端在 Apache 上运行良好,但我必须安装一个使用 nginx (lib-www) 的模块。

它现在可以工作了,但由于某种原因,POST/GET 方法不起作用....举个例子,我的后端设置为接受 url 中的产品 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 类型设置。关于为什么这不起作用的任何想法?我也愿意提供您需要的任何额外信息。

【问题讨论】:

    标签: perl sockets cgi nginx fastcgi


    【解决方案1】:

    这个特殊的 fastcgi-wrapper.pl 脚本由 Denis S. Filimonov 修改以正确处理 POSTS 请求。你可以阅读更多关于它的信息:http://www.ruby-forum.com/topic/145858

    【讨论】:

      猜你喜欢
      • 2010-09-27
      • 2015-06-28
      • 2021-12-24
      • 1970-01-01
      • 2014-10-21
      • 2011-03-23
      • 2012-12-06
      • 2010-11-24
      • 1970-01-01
      相关资源
      最近更新 更多