我嘗試在 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";
)。
我使用 PHP5-FPM 與完全相同的ProxyPassMatch
行,當然,除了 mime 檔案副檔名和連接埠。它在那裡完美地工作。
裡面error.log
沒有什麼特別的。
答案1
安裝今天發布的 HHVM 3.0 後,此問題已修復。無需更改我的任何配置即可工作,因此此故障一定是由 HHVM 2.x 引起的。