如何使用fastCGI和nginx实现HTTP方法?

时间:2016-10-25 08:08:22

标签: c++ nginx fastcgi

我正在尝试使用C ++中的FastCGI和Nginx来使用基本HTTP。我在这里找到了fastcgi的链接:http://chriswu.me/blog/getting-request-uri-and-content-in-c-plus-plus-fcgi/

但是对于像GET和POST这样的HTTP方法没有明显的区别。此外,我无法弄清楚如何使用fastcgi执行url的重定向。 P

1 个答案:

答案 0 :(得分:0)

我没有使用fastCGI和nginx的经验,但由于我使用过CGI / Apache并看了一下fastCGI样本,我可以建议以下内容(并且有失败的答案):

  • GET请求是URL的一部分,因此我将解析const char* uri = FCGX_GetParam("REQUEST_URI", request.envp);以检查是否给出了参数(即,如果问号后面有键/值对)。
  • 如果前一个条件为false,则检查标头中的媒体类型是否为application/x-www-form-urlencoded(意味着它是POST)并解析HTTP请求主体以获取键/值对。有关详细信息,请访问Wikipedia
  • 要执行重定向,请使用example但修改响应以返回HTTP重定向响应,如Wikipedia所述。

也许fastCGI提供更高级的功能,所以所有这些都可以通过花哨的方式实现。