我已经能够相当轻松地从预构建的 debian 软件包中运行 facebook 的 hhvm,并对其进行编译,然后将其作为代理在 apache 后面运行。但是,代理设置的问题是,我无法获取除 http 状态代码 200(例如 304)之外的响应标头。这不是 apache 的代理配置,而是 hhvm 和 apache 交互的某些东西,甚至是 hhvm 中的某些东西。
无论如何,HHVM 正式停止支持独立服务器,他们正在转向 fastcgi,并且由于我们所有的服务器都运行 Debian,因此我无法在不编译 mod_proxy_fastcgi 的情况下访问它(不幸的是,我发现的 apache 2.4 的唯一反向移植没有 mod_proxy_fastcgi 反向移植)。
因此,我目前正在尝试让 HHVM 在 apache 2.2 的旧 mod_fastcgi 后面运行。但目前,我在 apache 的错误日志中只收到“connect() failed”,而 hhvm 正在监听:::1080
我的 apache 配置的重要部分是
RemoveHandler application/x-httpd-php
FastCgiExternalServer /home/www/hhvm/hostname/htdocs/php5.fcgi -flush -host ip6-localhost:1080
AddType application/x-hhtpd-fastphp5 .php
Action application/x-httpd-fastphp5 /php5.fcgi
Alias /php5.fcgi /home/www/hhvm/hostname/htdocs/php5.fcgi
netstat 还列出 hhvm 正在监听 :::1080,我可以通过 telnet 连接到它
关于我需要做哪些改变才能使其发挥作用,您有什么想法吗?
PS:不幸的是,我没有足够的声誉来在这里创建 hhvm 标签
PPS: 最初发布在 stackoverflow 上:https://stackoverflow.com/questions/20410432/hhvm-through-apache-mod-fastcgi-on-debian