我尝试在 Debian Wheezy 上设置 Apache 2.4 来调用黑客/HHVM根据使用 mod_proxy / mod_proxy_fcgi这文章。
HHVM 的安装是通过 APT 包管理器进行的。当我使用以下命令运行单个 .hack 文件时
hhvm test.hack
包含 test.hack 内容
<?hh echo "test";
输出符合预期。
现在我使用以下方式启动 HHVM fastcgi 服务器
hhvm --mode server -vServer.Type=fastcgi -vServer.Port=9001
并将其放入 Apache 配置文件中的测试 vHost 中:
ProxyPassMatch ^/(.*.hack(/.*)?)$ fcgi://127.0.0.1:9001/home/web/test/$1
重新启动 Apache 后,我通过请求不存在的 .hack 文件来验证它是否有效。我404 Not Found
从 HHVM fastcgi 服务器获取了一个,它看起来与默认的 Apache 404 页面不同。
当我请求我的test.hack
文件时,Apache 开始“永久加载”。如果我在后台终止 fastcgi,它会立即停止加载,并提供我test.hack
输入的内容作为下载(<?hh echot "test";
)。
ProxyPassMatch
我使用 PHP5-FPM ,除了 mime 文件扩展名和端口之外,其他都完全相同。它在那里运行良好。
没有error.log
什么特别之处。
答案1
安装今天发布的 HHVM 3.0 后,这个问题已经修复。无需更改任何配置即可运行,因此此故障一定是由 HHVM 2.x 引起的。