我写C ++中的高性能的HTTP事件服务器,我想让它与nginx的和PHP-FPM(FastCGI的)工作得很好。这是我的nginx配置的片段。

    location ~ \.eve$ {
        gzip off;
        proxy_redirect off;
        proxy_buffering off;
        proxy_pass http://127.0.0.1:9001;
        proxy_intercept_errors on;
        error_page 505 = @fallback // this is actually BACKEND.php
    }

我的事件服务器返回505错误,如果有事件发生,否则它挂起,并最终返回一个“没有国家CHANGE”指令,我处理与JS或者你有什么(这基本上是彗星)。问题的关键是,我想nginx的赶上505错误,并且请求转发到PHP PHP这样可以相应地处理该事件。我的服务器基本上只是一个事件枢纽,让很多很多的用户能够连接,看看是否有任何新的事件。如果有事件,PHP处理该事件的分布,包括权限和其它挥发性材料。

的问题是,nginx的不流通POST(或GET),其传递给* .eve,到BACKEND.php变量。现在,我相信这是由设计(由于error_page指令),但我想一定有使其工作的一些方法。我的服务器上运行的9001,PHP-FPM于9000任何想法运行?

有帮助吗?

解决方案

我通过简单地重建最近nginx的版本固定的问题。这个配置,以及POST和GET转发完美的作品。古怪。

其他提示

您服务器可以返回与X-阿塞尔-重定向头指向后端URL的响应。 在这种情况下的nginx将请求的URL并返回响应返回给用户。 无30 [12]重定向,就好像用户请求的URL在首位。

http://kovyrin.net/ 2006/11/01 / nginx的-X-加速度重定向消息PHP-轨/ 结果 谷歌用于其它实施例。

这是nginx的具体,但这个想法是与X-SENDFILE头的lighttpd功能。

我不会指望通过这里POST请求参数。 镜柱参数的X-加速重定向得到回报的, 如果你的后端可以接受。 error_page不会通过任何确实

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top