
还没安装的朋友们可以参考前一篇文章 HHVM 初体验 | CentOs 7 下安装笔记
还没安装LNMP环境的可以参考这一篇 Centos7 mini 配置 php7+nginx+mysql 最详细过程,为linux小白送福利
配置HHVM作为systemd服务运行, 我们将在unix套接字文件上运行HHVM, 使之更快
在 systemd 目录并创建 “hhvm.service” 文件
cd /etc/systemd/system/
vi hhvm.service复制粘贴如下配置
[Unit]
Description=HHVM HipHop Virtual Machine (FCGI)
After=network.target nginx.service mariadb.service
[Service]
ExecStart=/usr/local/bin/hhvm --config /etc/hhvm/server.ini --user nginx --mode daemon -vServer.Type=fastcgi -vServer.FileSocket=/var/run/hhvm/hhvm.sock
[Install]
WantedBy=multi-user.target保存退出。
接下来编辑 HHVM 目录中的 “server.ini” 文件
cd /etc/hhvm/
vi server.ini在大约第七行的位置找到hhvm.server.port行替换为下面 unix socket 方式:
hhvm.server.file_socket = /var/run/hhvm/hhvm.sock接着将 socket 文件目录的所有者更改为“nginx”用户,因为上文中我们定义了 hhvm 以 nginx 用户身份运行
(如果没有就创建 mkdir hhvm)
chown -R nginx:nginx /var/run/hhvm/从新加载系统服务,重启 hhvm 并设置为开机启动
systemctl daemon-reload
systemctl restart hhvm
systemctl enable hhvm创建一个新的HHVM配置文件并将其包含在Nginx配置文件中
cd /etc/nginx/
vi hhvm.conf复制粘贴如下配置(根据自己的解析路径,我的是默认的 /usr/share/nginx/html)
location ~ \.(hh|php)$ {
root /usr/share/nginx/html;
fastcgi_keep_conn on;
fastcgi_pass unix:/var/run/hhvm/hhvm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}保存退出。
编辑 同级目录下的nginx.conf
vi nginx.conf将 hhvm.conf 引入到 nginx.conf 中的server中,大约在57行的位置
include /etc/nginx/hhvm.conf;类似于:

检查语法是否有误,若无误重新启动
nginx -t
nginx -s reload到nginx解析目录下创建测试文件 index.php
cd /usr/share/nginx/html/
vi index.php输出
<?php
phpinfo();