如何在 Ubuntu 13.10 VPS 上安装 HHVM(HipHop 虚拟机)
介绍 本文将介绍在 Digital Ocean VPS 上的 Ubuntu 13.10 上安装 HHVM 所需的步骤。本文还将说明如何通过创建来使用 HHVM: PHP 中的命令行“Hello World”脚本 一个基于 Web 的“Hello World”脚本,用 PHP 编写并由 HHVM 服务器提供服务 先决条件 本教程的唯一先决条件是安装了 Ubuntu 13.10 x64 的 VPS。请
介绍
本文将介绍在 Digital Ocean VPS 上的 Ubuntu 13.10 上安装 HHVM 所需的步骤。本文还将说明如何通过创建来使用 HHVM:
-
PHP 中的命令行“Hello World”脚本
-
一个基于 Web 的“Hello World”脚本,用 PHP 编写并由 HHVM 服务器提供服务
先决条件
本教程的唯一先决条件是安装了 Ubuntu 13.10 x64 的 VPS。请注意,HHVM 不支持任何 32 位操作系统,并且他们没有计划添加对 32 位操作系统的支持。
您将需要从命令行执行命令,您可以通过以下两种方式之一执行:
1.使用SSH访问Droplet。
- 使用 Digital Ocean Droplet 管理面板中的“控制台访问”
什么是 HHVM?
HipHop Virtual Machine (HHVM) 是由 Facebook 开发并开源的虚拟机,用于处理和执行用 PHP 编写的程序和脚本。 Facebook 开发 HHVM 是因为常规的 Zend+Apache 组合在为 PHP 构建的大型应用程序提供服务时效率不高。
根据他们的网站,与 Zend PHP 引擎 + APC(这是目前的托管方式大部分 PHP 应用程序)。
安装 HHVM
安装 HHVM 非常简单,不会超过几分钟。从命令行执行以下 4 个命令将安装并准备好 HHVM:
wget -O - http://dl.hhvm.com/conf/hhvm.gpg.key | apt键添加 -
echo deb http://dl.hhvm.com/ubuntu saucy main |三通 /etc/apt/sources.list.d/hhvm.list
apt-get 更新
apt-get 安装 hhvm
要确认 HHVM 已安装,请键入以下命令:
hhvm --帮助
这将显示如何从命令行使用 hhvm
命令的详细信息。这是一个示例屏幕截图,说明了这一点:
使用 HHVM 从命令行在 PHP 中测试“Hello World”脚本
在命令行中键入以下命令:
猫 > hello_world.php
这将创建一个名为 hello_world.php
的文件,并允许您输入其内容。输入(或复制并粘贴)以下代码,然后按“Ctrl + D”保存文件。
<?php
echo "\n你好世界\n\n";
注意: 如果您熟悉 nano
或 vim
等编辑器,可以使用它们来创建和保存此文件。
创建此文件后,可以使用以下命令使用 hhvm
执行它:
hhvm hello_world.php
下面是一个截图来说明这个 Hello World 脚本的创建和执行:
使用 HHVM 服务器在 PHP 中测试“Hello World”脚本(可从浏览器访问)
首先创建一个目录 (public
) 作为公共文件夹并包含 PHP 文件。 请注意,您可以将此目录命名为任何名称并将其放置在任何位置。执行以下命令创建该目录并进入:
mkdir 公共
光盘公开
现在在命令行中输入以下命令:
猫>你好.php
这将在 public
目录中创建一个名为 hello.php
的文件,并允许您输入其内容。输入(或复制并粘贴)以下代码,然后按“Ctrl + D”保存文件。
<?php
echo '<h1>Hello World</h1>';
注意: 如果您熟悉 nano
或 vim
等编辑器,可以使用它们来创建和保存此文件。
创建此文件后,可以从命令行使用“hhvm”以下列方式启动服务器:
hhvm -m 服务器
下面是一个截图来说明这个 Hello World 脚本的创建和执行:
此命令将启动服务器(在端口 80 上),现在可以从浏览器访问 hello.php
文件。如果 Droplet 的 IP 地址为 128.199.212.7,则可以在以下位置访问这个新创建的文件:
http://128.199.212.7/hello.php
注意: 将128.199.212.7
替换为您的Droplet使用的IP地址或域名。
访问此 URL 应显示类似于以下屏幕截图中的网页:
将您的 PHP 应用程序移植到 HHVM
为了在端口 80(网站的标准端口)上使用 HHVM 而不是 Zend/Apache 开始为 PHP 应用程序提供服务,需要停止 Apache 服务。这可以使用以下命令完成:
服务 apache2 停止
此命令将停止 Apache 并释放端口 80 供 HHVM 使用。下一步是在您的 PHP 应用程序的根目录中启动 HHVM 服务器**。这个根目录在 Ubuntu 上最常见的位置是 /var/www
。
使用以下命令切换到该目录:
光盘 /var/www
进入此目录后,您需要做的就是启动 HHVM 服务器:
hhvm -m 服务器
此命令将启动 HHVM 服务器,它将开始从当前目录为您的 PHP 应用程序提供服务。
在 FastCGI 模式下使用 HHVM
从 3.0 版本开始,HHVM 不能再在服务器模式下使用。本节将帮助您在 FastCGI 模式下使用 Apache 和 Nginx 服务器配置 HHVM。
使用阿帕奇
将 HHVM 配置为使用 Apache 在 FastCGI 模式下工作非常简单。您需要做的就是执行以下脚本:
/usr/share/hhvm/install_fastcgi.sh
运行此脚本会将 Apache 配置为开始使用 HHVM 来处理 PHP 代码。它还将重新启动 Apache 服务器,因此您无需执行任何其他操作。
使用 Nginx
如果您将 Nginx 与 PHP-FPM 一起使用,则必须修改配置文件以禁用 PHP-FPM。该文件通常位于/etc/nginx/sites-available/default
查找以下部分并确保它全部被注释(通过在每行的开头添加一个#
)
# 将 PHP 脚本传递给在 127.0.0.1:9000 上监听的 FastCGI 服务器
#
#location ~ \.php$ {
# fastcgi_split_path_info ^(.+\.php)(/.+)$;
# # 注意:你应该有“cgi.fix_pathinfo u003d 0;”在 php.ini 中
#
# # 单独使用 php5-cgi:
# fastcgi_pass 127.0.0.1:9000;
## 使用 php5-fpm:
# fastcgi_pass unix:/var/run/php5-fpm.sock;
# fastcgi_index index.php;
# 包括 fastcgi_params;
#}
完成此操作后,执行以下脚本:
/usr/share/hhvm/install_fastcgi.sh
执行此脚本将 Nginx 配置为开始使用 HHVM 来处理 PHP 代码。它还会重新启动 Nginx 服务器,因此您无需执行任何其他操作。
确认 Apache/Nginx 正在使用 HHVM
将服务器配置为开始使用 HHVM 后,最好确认服务器(Apache 或 Nginx)确实在使用 HHVM 来处理 PHP。
你可以通过创建一个测试 PHP 文件来做到这一点,比如说 info.php
并将它放在你服务器的公共文件夹中(对于 Apache 通常是 /var/www
和 /usr/share/nginx/html
对于Nginx)。现在将以下内容放入此文件中:
<?php
echo defined('HHVM_VERSION')?'Using HHVM':'Not using HHVM';
现在,如果一切设置正常,当您在浏览器中访问此文件时,您应该会看到以下消息:
使用 HHVM
重要的提示
HHVM 集成了很多常用的 PHP 扩展,可以轻松移植大量应用程序而无需大惊小怪。但是,如果应用程序使用尚未合并的 PHP 扩展,则选择 HHVM 将破坏应用程序。可以在 这里 找到已移植到 HHVM 的 PHP 扩展的完整列表
最后一句话
如果您已经达到了这一步,那么您现在已经准备好开始使用 HHVM 来为您的基于 PHP 的网站提供服务了。 HHVM 比常规 Zend PHP 引擎 + APC 组合的效率高出数倍,可以帮助您以更低的硬件要求为网站的更多访问者提供服务!
<div classu003d“author”>提交人:<a hrefu003d“http://javascript.asia”>Jay</a></div>
更多推荐
所有评论(0)