3

我使用以下帖子中的说明作为在 HHVM 前使用 Nginx 作为代理的指南:http ://www.kyleboddy.com/2013/05/02/facebooks-hiphop-engine-when-to-use-它并获得它与codeigniter一起工作/

现在,我已经能够以两种不同的方式成功地完成一些事情,即转发关于原始 URI 的信息,如下所示:

location ~ .php$ {
        proxy_set_header Nginx-Uri $myuri;
        proxy_pass http://127.0.0.1:8064/index.php?orig_uri=$myuri;
}

现在我可以使用 getallheaders() 访问自定义标头“Nginx-Uri”,或者通过 $_SERVER['QUERY_STRING'] 获取相同的信息。但是一种方式比另一种更可取吗?我对 HHVM 是否支持getallheaders()有一些疑问,因为它以前只支持作为 Apache 模块安装的 PHP,而 HHVM 是它自己的服务器,但是 HHVM 确实实现了 getallheaders() ,所以显然不是一个考虑。

提前致谢

4

1 回答 1

4

两者都将在可预见的未来发挥作用。getallheaders() 应该适用于所有传输方法,即使我们实现了 fastcgi、modhhvm 或我们自己的 libevent 服务器。

我个人不喜欢魔法全局变量,更喜欢这个函数,但这只是个人喜好。如果我们可以分析您的代码并看到您从不使用某个超级全局,它可能会产生性能改进,我们不必填充它。

于 2013-06-27T15:42:22.437 回答