HHVM全称为 HipHop Virtual Machine,它是一个开源虚拟机,用来运行由 Hack(一种编程语言)和 PHP 开发应用。HHVM 在保证了 PHP 程序员最关注的高灵活性的要求下,经过使用最新的编译方式来取得了非凡的性能。到目前为止,相对于 PHP + APC (Alternative PHP Cache) ,HHVM 为 FaceBook 在 HTTP 请求的吞吐量上提升了9倍的性能,在内存的占用上,减小了5倍左右的内存占用。php
同时,HHVM 也能够与基于 FastCGI 的 Web 服务器(如 Nginx 或者 Apache )协同工做。html
安装 HHVM,Nginx和 Apache 还有 MariaDBmysql
在本教程中,咱们一块儿来配置 Nginx/Apache web 服务器、 数据库服务器 MariaDB 和 HHVM 。咱们将使用 Ubuntu 15.04 (64 位),由于 HHVM 只能运行在64位系统上。同时,该教程也适用于 Debian 和 Linux Mint。nginx
第一步: 安装 Nginx 或者 Apache 服务器程序员
一、首先,先进行一次系统的升级并更新软件仓库列表,命令以下web
# apt-get update && apt-get upgrade
系统升级sql
二、 正如我以前说的,HHVM 能和 Nginx 和 Apache 进行集成。因此,究竟使用哪一个服务器,这是你的自由,不过,咱们会教你如何安装这两个服务器。数据库
安装 Nginxapache
咱们经过下面的命令安装 Nginx/Apache 服务器编程
# apt-get install nginx
安装 Nginx 服务器
安装 Apache
# apt-get install apache2
安装 Apache 服务器
完成这一步,你能经过如下的连接看到 Nginx 或者 Apache 的默认页面
http://localhost或http://IP-Address
第二步: 安装和配置 MariaDB
三、 这一步,咱们将经过以下命令安装 MariaDB,它是一个比 MySQL 性能更好的数据库
# apt-get install mariadb-client mariadb-server
安装 MariaDB
四、 在 MariaDB 成功安装以后,你能够启动它,而且设置 root 密码来保护数据库:
# systemctl start mysql# mysql_secure_installation
回答如下问题,只须要按下y或者 n而且回车。请确保你仔细的阅读过说明。
Enter current password for root (enter for none) = press enterSet root password? [Y/n] = yRemove anonymous users[y/n] = yDisallow root login remotely[y/n] = yRemove test database and access to it [y/n] = yReload privileges tables now[y/n] = y
五、 在设置了密码以后,你就能够登陆 MariaDB 了。
# mysql -u root -p
第三步: 安装 HHVM
六、 在此阶段,咱们将安装 HHVM。咱们须要添加 HHVM 的仓库到你的sources.list文件中,而后更新软件列表。
# wget -O - http://dl.hhvm.com/conf/hhvm.gpg.key | apt-key add -# echo deb http://dl.hhvm.com/ubuntu DISTRIBUTION_VERSION main | sudo tee /etc/apt/sources.list.d/hhvm.list# apt-get update
重要:不要忘记用你的 Ubuntu 发行版代号替换上述的 DISTRIBUTION_VERSION (好比:lucid, precise, trusty) 或者是 Debian 的 jessie 或者 wheezy。在 Linux Mint 中也是同样的,不过只支持 petra。
添加了 HHVM 仓库以后,你就能够轻松安装了。
# apt-get install -y hhvm
安装以后,就能够启动它,可是它并无作到开机启动。能够用以下命令作到开机启动。
# update-rc.d hhvm defaults
第四步: 配置 Nginx/Apache 链接 HHVM
七、 如今,nginx/apache 和 HHVM 都已经安装完成了,而且都独立运行起来了,因此咱们须要对它们进行设置,来让它们互相关联。这个关键的步骤,就是须要告知 nginx/apache 将全部的 php 文件,都交给 HHVM 进行处理。
若是你用了 Nginx,请按照以下步骤:
nginx 的配置文件在 /etc/nginx/sites-available/default, 而且这些配置文件会在 /usr/share/nginx/html 中寻找文件执行,不过,它不知道如何处理 PHP。
为了确保 Nginx 能够链接 HHVM,咱们须要执行所带的以下脚本。它能够帮助咱们正确的配置 Nginx,将 hhvm.conf 放到 上面提到的配置文件 nginx.conf 的头部。
这个脚本能够确保 Nginx 能够对 .hh 和 .php 的作正确的处理,而且将它们经过 fastcgi 发送给 HHVM。
# /usr/share/hhvm/install_fastcgi.sh
配置 Nginx、HHVM
重要: 若是你使用的是 Apache,这里不须要进行配置。
八、 接下来,你须要使用 hhvm 来提供 php 的运行环境。
# /usr/bin/update-alternatives --install /usr/bin/php php /usr/bin/hhvm 60
以上步骤完成以后,你如今能够启动而且测试它了。
# systemctl start hhvm
第五步: 测试 HHVM 和 Nginx/Apache
九、 为了确认 hhvm 是否工做,你须要在 nginx/apache 的文档根目录下创建 hello.php。
# nano /usr/share/nginx/html/hello.php [对于 Nginx]或# nano /var/www/html/hello.php [对于 Nginx 和 Apache]
在文件中添加以下代码:
<?phpif (defined('HHVM_VERSION')) {echo 'HHVM is working';phpinfo();} else {echo 'HHVM is not working';}?>
而后访问以下连接,确认本身可否看到 "hello world"
http://localhost/info.php或http://IP-Address/info.php
HHVM 页面
若是 “HHVM” 的页面出现了,那就说明你成功了。
结论
以上的步骤都是很是简单的,但愿你能以为这是一篇有用的教程,若是你在以上的步骤中遇到了问题,给咱们留一个评论,咱们将全力解决。
若是想深刻体验LINUX系统的新手,也能够先下载一个方德Linux软件中心试用一下。
免费下载地址:http://www.nfs-cloud.cn:81/appCenter/open/softcenter