次のserver.ini構成を使用してubuntu14でhhvmを実行しています。
server.ini
; php options
pid = /var/run/hhvm/pid
; hhvm specific
;hhvm.server.port = 9000
hhvm.server.file.socket=/var/run/hhvm/hhvm.sock
hhvm.server.type = fastcgi
hhvm.server.default_document = index.php
hhvm.log.use_log_file = true
hhvm.log.file = /var/log/hhvm/error.log
hhvm.repo.central.path = /var/run/hhvm/hhvm.hhbc
9000ポート行をコメントアウトし、ファイルソケットオプションを追加しました。この変更後、サービスを再起動すると、hhvmがポート80にもバインドされているように見えます(ポート80でnginxを実行しようとしています)。ポート80で明示的にバインドするhhvmの構成が見つかりませんでした。hhvmがポート80を使用しないようにする方法についての考え。
php.ini
; php options
session.save_handler = files
session.save_path = /var/lib/hhvm/sessions
session.gc_maxlifetime = 1440
; hhvm specific
hhvm.log.level = Warning
hhvm.log.always_log_unhandled_exceptions = true
hhvm.log.runtime_error_reporting_level = 8191
hhvm.mysql.typed_results = false
/ var/run/hhvmにhhvm.sockも表示されません。
更新ファイルソケットをコメントしてポートに置き換えると、hhvmは80ではなくポート9000にバインドします。nginxでhhvmを使用する正しい方法を理解する必要があります(nginxを実行できるようにする)ポート80)
そのはず hhvm.server.file_socket
ではなく、hhvm.server.file.socket
。
ファイルソケットオプションではなくポート番号を使用することになり、それが機能するようになりました。