【问题标题】:how to install phalcon php on amazon linux如何在亚马逊 linux 上安装 phalcon php
【发布时间】:2019-10-30 14:37:01
【问题描述】:

我遵循 phalcon 文档并将 repo 添加到我的系统中。

> curl -s https://packagecloud.io/install/repositories/phalcon/stable/script.rpm.sh | sudo bash
...
The repository is setup! You can now install packages.

但是当我继续关注文档时:

> yum install php70u-phalcon
Loaded plugins: extras_suggestions, langpacks, priorities, update-motd
No package php70u-phalcon available.

并且搜索 phalcon 不会返回任何内容:

> yum search phalcon
Loaded plugins: extras_suggestions, langpacks, priorities, update-motd
Warning: No matches found for: phalcon

那么我哪里错了?

【问题讨论】:

标签: php centos phalcon yum


【解决方案1】:

这是我的解决方案:使用 php 7.1 和 phalcon 3.4.0

# Install PHP 7.1

yum install epel-release -y
yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm -y
yum-config-manager --enable remi-php71
yum install php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysql php-mbstring php-pecl-zip php-imap php-fpm php-intl -y

# Install Phalcon3.4 

yum install php-devel pcre-devel gcc make -y
curl -LO https://github.com/phalcon/cphalcon/archive/v3.4.0.tar.gz 
tar xzf v3.4.0.tar.gz && cd cphalcon-3.4.0/build 
sh install
echo "extension=phalcon.so" > /etc/php.d/phalcon.ini
cd ../.. && rm -rf v3.4.0.tar.gz cphalcon-3.4.0

希望对你有帮助!

【讨论】:

  • 如果您使用“remi-php71”存储库,只需使用 php-phalcon3 包;)
【解决方案2】:

不幸的是,Phalcon 文档安装指南不起作用。 信不信由你,从头开始编译 phalcon 扩展更容易。

我有一本食谱,我在创建新的 EC2 实例时总是使用它并且必须安装 phalcon 扩展:

安装 php7.2 及其部分扩展

amazon-linux-extras install php7.2 -y
yum install php-bcmath php-gd php-mbstring php-pecl-mcrypt php-mysqlnd php-opcache php-pdo php-pecl-igbinary php-pgsql php-process php-soap php-xml php-xmlrpc -y

安装一些编译 phalcon 所需的包

yum install php-devel gcc libtool pcre-devel re2c -y
cd /tmp
yum install git -y

安装 phalcon 3.4.x,因为我觉得 4.0 不够可靠

git clone https://github.com/phalcon/cphalcon
cd cphalcon/build
git checkout origin/3.4.x

这段代码是为了以防你没有足够的内存

/bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=5120
chmod 600 /var/swap.1
/sbin/mkswap /var/swap.1
/sbin/swapon /var/swap.1

编译 phalcon。可能需要几分钟时间

sudo ./install

启用 phalcon 扩展

echo "; Enable phalcon extension module
extension=phalcon.so" >> /etc/php.d/50-phalcon.ini

重启服务

service httpd restart
service php-fpm restart

同样,如果您没有足够的 RAM,此命令只是

/sbin/swapoff /var/swap.1
rm -rf /var/swap.1

希望对你有帮助;)

【讨论】:

  • 对于未来的读者,请注意 Phalcon 现在需要 PSR 扩展。请参考docs.phalcon.io/4.0/en/installation 根据这个答案,在 Amazon Linux 上,您需要 /etc/php.d/40-psr.ini 的内容:extension=psr.so 验证您在 php -m 中看到“psr”扩展名,然后在其中检查“phaclon”以确保它已加载。看到 psr 和 phalcon 加载后,继续并重新加载 httpd 和 php-fpm。
猜你喜欢
  • 2020-07-12
  • 2015-05-26
  • 1970-01-01
  • 1970-01-01
  • 2013-11-07
  • 2022-09-23
  • 2014-03-29
  • 2016-09-02
  • 2020-05-17
相关资源
最近更新 更多