在Ubuntu Debian Mint上安装HHVM和nginx apache
Zuoxiaojuan
・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官方不支持(在编写本文时),并且可能导致不好的事情发生。
要求
- 上面说的一个发行版。
- 配置软件包的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"出现,那么就完全设置好了!