跳转到内容

安装


需求

PHP 8.1

Phalcon v5.9 仅支持 PHP 8.0 及以上版本。

尽管 PHP 8.0 已经发布几年了,它的主动支持以及安全更新已经过期,Phalcon 仍然支持它,以提供足够的时间给开发人员升级他们的应用程序。我们将继续为 v5 支持 PHP 8.0 再持续一年。Phalcon v6 及更高版本将支持 PHP 8.1+。

注意

安装 Web 服务器不在本文档的讨论范围之内。请参考 Internet 上的相关指南来了解如何安装 Web 服务器。

PDO

由于 Phalcon 是松耦合的,因此它在无需额外扩展的情况下即可暴露功能。然而,某些组件依赖于其他扩展才能工作。当需要数据库连接和访问时,您需要安装php_pdo扩展。如果您的 RDBMS 是 MySQL/MariaDB 或 Aurora,则还需要php_mysqlnd扩展。同样,使用 Phalcon 连接 PostgreSql 数据库需要php_pgsql扩展。

加载顺序

Phalcon 需要在PDO之后加载。某些发行版会在ini文件上添加数字前缀。如果是这种情况,请为 Phalcon 选择一个较高的数字(例如50-phalcon.ini),高于PDO。这将在必需的扩展之后加载 Phalcon。但是,如果您的发行版只有php.ini文件,请确保顺序与此类似:

extension=pdo.so
extension=phalcon.so

硬件

Phalcon 被设计为尽可能少地使用资源并提供高性能。尽管我们在各种高端环境中测试了 Phalcon(例如 0.25GB RAM、0.5 CPU),但您选择的硬件将取决于您的应用需求。

我们在过去几年中一直在 Amazon VM(512MB RAM 和 1 vCPU)上托管我们的网站和博客。

软件

注意

您应始终尝试使用最新版本的 Phalcon 和 PHP,因为它们解决了错误、提升了安全性,并提高了性能。

除了 PHP 8.0 或更高版本外,根据您的应用需求和所需的 Phalcon 组件,您可能还需要安装以下扩展:

注意

安装这些包将因您的操作系统以及您使用的包管理器(如果有)而异。请查阅相关文档以了解如何安装这些扩展。

对于libpcre3-dev包,您可以使用以下命令:

PCRE

Debian

sudo apt-get install libpcre3-dev
然后再次尝试安装 Phalcon

CentOS
sudo yum install pcre-devel
Mac/Osx 使用 Brew
brew install pcre

如果没有brew,你需要前往PCRE网站并下载最新的 pcre:

tar -xzvf pcre2-10.42.tar.gz
cd pcre2-10.42
./configure --prefix=/usr/local/pcre-10.42
make
make install
ln -s /usr/local/pcre2-10.42 /usr/sbin/pcre
ln -s /usr/local/pcre2-10.42/include/pcre.h /usr/include/pcre.h

对于 Maverick

brew install pcre
如果出现错误,可以使用

sudo ln -s /opt/local/include/pcre.h /usr/include/
sudo pecl install apc 

安装平台

因为 Phalcon 被编译为 PHP 扩展,因此其安装方式与任何其他传统的 PHP 框架有所不同。Phalcon 需要作为模块安装并加载到您的 Web 服务器上。

注意

推荐的安装方法是通过PECL.

注意

要使用 PECL 安装 phalcon,您至少需要 4GB 的 RAM,否则 PECL 构建命令将会失败。

PECL

PECL 安装方法适用于 Windows、Linux 和 macOS。在 Windows 下提供预编译的 dll 文件,而 Linux 和 macOS 下 Phalcon 将本地编译。要使用 PECL 安装 Phalcon,请确保已安装pecl/pear

pecl channel-update pecl.php.net
pecl install phalcon

额外的 PPA

Linux DEB:Ondřej Surý

您可以安装由Ondřej Surý.

提供的仓库:

sudo add-apt-repository ppa:ondrej/php
sudo apt-get update

并且 Phalcon:

sudo apt-get install php-phalcon5

Linux RPM:Remi

Remi Collet维护了一个优秀的 RPM 基础安装仓库。您可以找到有关如何为您的发行版启用它的说明点击这里.

之后安装 Phalcon 只需执行以下命令:

yum install php80-php-phalcon5

还有针对特定架构(x86/x64)和 PHP 版本的具体版本可用。

FreeBSD/GhostBSD

可以通过二进制包(pkg)或从源代码编译(ports)在 FreeBSD 上安装 Phalcon。要安装它,您需要发出以下命令:

pkg
pkg install php80-phalcon5
ports
cd /usr/ports/www/phalcon5

make install clean

Gentoo

用于安装 Phalcon 的 overlay 可以在以下位置找到点击这里

Raspberry Pi

sudo -s
git clone https://github.com/phalcon/cphalcon
cd cphalcon/
git checkout tags/v5.9.2 ./
zephir fullclean
zephir build

还需要将交换文件从默认的 100 MB 增加到至少 2000 MB。因为编译器缺少 RAM。

sudo -s
nano /etc/dphys-swapfile

替换CONF_SWAPSIZE=100的文件CONF_SWAPSIZE=2000

保存设置后,重启守护进程:

/etc/init.d/dphys-swapfile stop
/etc/init.d/dphys-swapfile start

macOS

Brew 包含二进制包,因此您不需要自己编译 Phalcon。如果您想自己编译扩展,则需要安装以下依赖项:

编译要求

  • PHP 8.x 开发资源
  • XCode

Brew

二进制安装(推荐):

brew tap phalcon/extension https://github.com/phalcon/homebrew-tap
brew install phalcon
编译 phalcon:
brew tap phalcon/extension https://github.com/phalcon/homebrew-tap
brew install phalcon --build-from-source 

MacPorts

sudo port install php80-phalcon

编辑你的 php.ini 文件并在末尾追加:

extension=php_phalcon.so

重启你的Web服务器。

PHPBrew (macOS/Linux)

PHPBrew 是管理系统中多个PHP版本和PHP扩展的极佳方式。可以在以下位置找到PHPBrew的安装说明:点击这里

如果你使用PHPBrew,可以使用以下方法安装Phalcon:

sudo phpbrew ext install phalcon

Windows

要在 Windows 上使用 Phalcon,你需要安装 phalcon.dll。我们已经根据目标平台编译了几个 DLL。DLL 可以在我们的下载页面上找到。

确定你的 PHP 安装以及架构。如果你下载了错误的 DLL,Phalcon 将无法工作。phpinfo()phpinfo() 输出包含此信息。在下面的示例中,我们需要 DLL 的 NTS 版本:

phpinfo

可用的 DLL 包括:

架构 版本 类型
x64 8.x 线程安全
x64 8.x 非线程安全 (NTS)
x86 8.x 线程安全
x86 8.x 非线程安全 (NTS)

编辑你的 php.ini 文件并在末尾追加:

extension=php_phalcon.dll

重启你的Web服务器。

从源代码编译

从源代码编译与大多数环境 (Linux/macOS) 类似。

需求

  • 根据你的版本提供的PHP开发资源(建议使用8.1)
  • GCC 编译器 (Linux/Solaris/FreeBSD) 或 Xcode (macOS)
  • re2c >= 0.13
  • libpcre-dev

编译

如果你想编译 Phalcon,可以这样做Zephir。你首先需要有Zephir Parser已安装在你的系统中:

pecl install zephir_parser

根据你的目标系统,你可能需要创建一个zephir_parser.ini文件,以加载此扩展。该文件的内容应为:

extension=zephir_parser.so

并且你可能需要使用phpenmod

phpenmod zephir_parser

启用该扩展。然后你需要下载最新的zephir.phar来自点击这里。将文件移动到PATH中可用的文件夹,例如/usr/local/bin,例如,并使其可执行:

mv zephir.phar /usr/local/bin 
cd /usr/local/bin/
mv zephir.phar zephir 
chmod a+x zephir
根据你的环境,你可能还需要更改文件的所有权。

注意

Zephir 也可以通过composer require phalcon/zephir:dev-development

克隆存储库到文件系统上的某个位置。

git clone https://github.com/phalcon/cphalcon

编译 Phalcon

cd cphalcon/
git checkout tags/v5.9.2 ./
zephir fullclean
zephir build

检查模块

php -m | grep phalcon

现在你需要启用 Phalcon。创建一个名为phalcon.ini的文件extension=phalcon.so并将其内容设置为。该文件应存在于:

  • Suse:/etc/php8/conf.d/phalcon.ini
  • CentOS/RedHat/Fedora:/etc/php.d/phalcon.ini
  • Ubuntu/Debian with Apache2:/etc/php8/apache2/conf.d/30-phalcon.ini并具有以下内容:
  • Ubuntu/Debian with Php8-FPM:/etc/php8/fpm/conf.d/30-phalcon.ini
  • Ubuntu/Debian with Php8-CLI:/etc/php8/cli/conf.d/30-phalcon.ini

对于 PHP 8.+,上述路径可能会略有不同。

上述指令将编译并在你的系统上ini安装模块。你也可以编译扩展并手动将其添加到你的

cd cphalcon/
git checkout tags/v5.9.2 ./
zephir fullclean
zephir compile
cd ext
phpize
./configure
make && make install

文件中:extension=phalcon.so中更改了php.ini如果你使用上述方法,则需要在 CLI 和 Web 服务器中都添加

调整构建

默认情况下,我们尽可能地兼容所有处理器进行编译 (gcc -mtune=native -O2 -fomit-frame-pointer)。如果你想让编译器生成与当前运行的处理器匹配的优化机器代码,可以在构建之前导出 CFLAGS 来设置自己的编译标志。例如:

export CFLAGS="-march=native -O2 -fomit-frame-pointer"
zephir build

这将为该芯片组生成最佳代码,但很可能在较旧的芯片组上导致编译对象损坏。

共享主机

在共享主机上运行你的应用程序可能会限制你安装 Phalcon,特别是如果你没有 root 访问权限。幸运的是,一些网络托管控制面板支持 Phalcon。

cPanel & WHM

cPanel & WHM 使用 Easy Apache 4 (EA4) 支持 Phalcon。你可以通过启用模块在 Easy Apache 4 (EA4) 中安装 Phalcon。

Plesk

Plesk 控制面板不支持 Phalcon,但你可以在 Plesk网站上找到安装说明。

无噪 Logo
无噪文档
25 年 6 月翻译
文档源↗