在Ubuntu Debian Mint上安装HHVM和nginx apache

・6 分钟阅读

HHVM或HipHop虚拟机是Facebook开发的一个虚拟机,用于提高PHP应用程序的性能,与常规PHP运行时不同,HHVM使用即时编译器将脚本转换为本机机器代码。因此,对于诸如加载Drupal网站之类的任务,第三方基准测试显示与php fpm 5.4相比,加载时间减少了3倍。

警告

虽然速度非常快,但是,HHVM仍在开发中,可能无法正确运行某些软件,或者可能不支持某些必要的扩展,注意:对于受支持的集成PHP扩展列表,follow此链接 。

支持的发行版

  • UBUNTU
    • 10.04 (lucid )
    • 12.04 (precise )
    • 14.04 (trusty )
  • Debian
    • 8 (jessie )
    • 7 (wheezy )
  • Mint
    • 16 (petra )

这些是Facebook和HHVM维护人员支持的发行版,以及仍然主动为服务器维护的发行版。虽然可以在Ubuntu 14.10服务器上安装HHVM,但是,HHVM官方不支持(在编写本文时),并且可能导致不好的事情发生。

要求

  1. 上面说的一个发行版。
  2. 配置软件包的root访问,

安装HHVM

安装HHVM本身既快捷又轻松,只需配置存储库和安装即可。

UBUNTU

对于lucid (10.04)和precise (12.04)用户: 两个版本的Ubuntu都需要添加存储库,为了简化流程,我们需要确保add-apt-repository命令已经就绪,如果你没有使用lucid 或precise,就跳过这一组命令。 另请参阅


sudo apt-get update
sudo apt-get install python-software-properties

对于lucid (10.04 )用户: HHVM还有一些不包含在基本系统或存储库中的依赖项。


sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-4.8 g++-4.8 gcc-4.8-base

对于precise(12.04 )用户: 你还需要添加一个存储库来获取运行HHVM所需的库。


sudo add-apt-repository ppa:mapnik/boost


HHVM还需要为它存储库安装一个GPG密钥。


wget -O - http://dl.hhvm.com/conf/hhvm.gpg.key | sudo apt-key add -

完成后,我们可以将HHVM的存储库添加到sources,list file,。


echo deb http://dl.hhvm.com/ubuntu DISTRIBUTION_VERSION main | sudo tee /etc/apt/sources.list.d/hhvm.list

请确保用你的版本的Ubuntu代码替换DISTRIBUTION_VERSION : lucid ,precise ,或者trusty .

现在我们可以安装。


sudo apt-get update
sudo apt-get install hhvm

我们已经完成了!

Debian

Debian上的HHVM安装与Ubuntu类似,但是,发布版本较少,你只需要给jessie和wheezy一组命令。


wget -O - http://dl.hhvm.com/conf/hhvm.gpg.key | sudo apt-key add -
echo deb http://dl.hhvm.com/debian DISTRIBUTION_VERSION main | sudo tee /etc/apt/sources.list.d/hhvm.list
sudo apt-get update
sudo apt-get install hhvm

请确保将DISTRIBUTION_VERSION替换为你的Debian的版本。 现在应该安装了HHVM 。

Mint

Mint安装也类似于Debian,因为它简化了。


wget -O - http://dl.hhvm.com/conf/hhvm.gpg.key | sudo apt-key add -
echo deb http://dl.hhvm.com/mint petra main | sudo tee /etc/apt/sources.list.d/hhvm.list
sudo apt-get update
sudo apt-get install hhvm

因为petra是目前唯一支持的Mint发行版,所以,就是这样!

使用Apache/

HHVM提供了一个漂亮的配置脚本,可以自动为每台服务器设置一个CGI处理程序。

如果使用Nginx,请确保编辑服务器文件(默认情况下,/etc/nginx/sites-available/default)的配置以禁用FastCGI处理,查找如下部分,并确保它不存在或完全注释出(通过将#添加到节的每一行的开头):


# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#location ~ .php$ {
# fastcgi_split_path_info ^(.+.php)(/.+)$;
# # NOTE: You should have"cgi.fix_pathinfo = 0;" in php.ini
#
# # With php5-cgi alone:
# fastcgi_pass 127.0.0.1:9000;
# # With php5-fpm:
# fastcgi_pass unix:/var/run/php5-fpm.sock;
# fastcgi_index index.php;
# include fastcgi_params;
#}

如果你使用的是Apache,那么就没有什么特别的。

然后,只需运行下面的脚本。


sudo /usr/share/hhvm/install_fastcgi.sh

测试HHVM

Apache或nginx应该自动配置和重新启动HHVM现在应该在你的服务器上运行,要测试它,你可以像这样制作一个文件:

 
<?php phpinfo();

 

并查找hishop或hhvm,或者你可以运行这个脚本:


<?php if(defined('HHVM_VERSION')) { echo 'HHVM works!'; }

如果"HHVM works"出现,那么就完全设置好了!

Zuoxiaojuan profile image