在Ubuntu / Debian / Mint上安装HHVM和Nginx / Apache

HHVM HipHop虚拟机是Facebook开发的用于PHP的虚拟机,用于提高PHP应用程序的性能。与常规的PHP运行时不同,HHVM使用即时编译器将脚本转换为本地机器代码。结果,第三方基准测试显示与PHP-FPM 5.4相比,在加载常规Drupal网站等任务上的加载时间最多减少了3倍。

警告语

尽管速度很快,但HHVM仍在开发中,可能无法正确运行某些软件,或者可能不支持某些必要的扩展。请谨慎操作。有关受支持的集成PHP扩展的列表,请单击此链接

支持的发行版

  • 的Ubuntu
    • 10.04(透明)
    • 12.04(精确)
    • 14.04(可信赖)
  • 德比安
    • 8(jessie)
    • 7(简朴)
  • 薄荷
    • 16(佩特拉)

这些是Facebook和HHVM维护人员将支持的发行版,以及仍为服务器积极维护的发行版。虽然可以在Ubuntu 14.10服务器上安装HHVM,但HHVM不支持(在撰写本文时)这样做,并且可能导致发生不良情况。

要求

  1. 上面的分布之一。
  2. 根访问配置安装软件包。

安装HHVM

安装HHVM本身是快速而轻松的,仅涉及配置存储库和安装。

的Ubuntu

仅对于清晰(10.04)和精确(12.04)用户: Ubuntu的两个版本都需要添加存储库。为了简化流程,我们需要确保add-apt-repository命令已准备就绪。如果您不使用清醒或精确方法,请跳过此命令集。除此以外:

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

仅对于清醒(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

仅限于精确(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文件中。

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

确保DISTRIBUTION_VERSION用您的Ubuntu版本的代号替换:清晰,精确或可信赖。

现在我们可以安装了。

sudo apt-get update
sudo apt-get install hhvm

我们完成了!

德比安

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版本的代号jessie或wheezy 替换。现在应已安装HHVM。

薄荷

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 / Nginx进行配置

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();

并查找“ HipHop”或“ HHVM”,或者可以运行如下脚本:

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

如果“ HHVM有效!” 出现,则一切就绪!

留下評論

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg可以避免系统污染,确保仅安装必要的依赖关系。

如何在Ubuntu 16.04上安装OpenSIPS控制面板

如何在Ubuntu 16.04上安装OpenSIPS控制面板

快速学习如何在Ubuntu 16.04上安装OpenSIPS控制面板,为VoIP提供商提供支持的功能。

在Fedora 28上安装Akaunting

在Fedora 28上安装Akaunting

学习如何在Fedora 28上安装Akaunting,一款适合小型企业和自由职业者的开源会计软件。

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

使用其他系统?Mailtrain是一个基于Node.js和MySQL / MariaDB构建的开源自托管新闻通讯应用程序。

诊断Minecraft服务器延迟和低TPS

诊断Minecraft服务器延迟和低TPS

了解導致Minecraft延遲的原因和解決方案,包括優化伺服器性能和減少滯後的步驟。

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息