LoginSignup
2
5

More than 5 years have passed since last update.

Phalcon3.4セットアップメモ (Amazon Linux2)

Last updated at Posted at 2018-11-25

目的

PHPのフレームワークの中でも高速と言われている「Phalcon」のセットアップを行う

ベース環境

OS : Amazon Linux 2
nginx : 1.12
php : 7.2

※ 以下ページで作成した環境をベースとする
https://qiita.com/knymssh/items/15bb876da0688db5feb1

※ EC2インスタンスタイプは「t2.micro」だとソースコードからのコンパイル時にメモリ不足となるため、「t2.medium」で実行

Phalcon(3.4)のインストール

ソースコードからコンパイル

※ 手順は公式サイトを参考
https://docs.phalconphp.com/ja/3.4/installation#installation-sources

コンパイルに必要なパッケージをインストール

sudo yum install -y gcc make php-devel git

ソースコード取得、コンパイル実行

git clone https://github.com/phalcon/cphalcon
cd cphalcon/build
sudo ./install

/etc/php.d/phalcon.ini (新規ファイル)

モジュール読み込みの設定を追加

echo 'extension=phalcon.so' | sudo tee /etc/php.d/phalcon.ini

/etc/nginx/conf.d/phalcon.conf (新規ファイル)

※ 公式サイトの記載を参考に設定
https://docs.phalconphp.com/ja/3.4/webserver-setup#nginx

サービス再起動

$ sudo systemctl restart php-fpm
$ sudo systemctl restart nginx

確認

phalconモジュールが正常に組み込まれていることを確認

$ php -r 'print_r(get_loaded_extensions());' | grep phalcon
    [34] => phalcon

また、ブラウザからphpinfoにアクセスして、「phalcon」のセクションが追加されていることを確認

補足

phalconはremiリポジトリからもインストールできますが、
今回のベース環境ではphalconが有効にならなかったため、この手順は使用していません。

# 外部リポジトリを追加(epel,remi)
$ sudo amazon-linux-extras install -y epel
$ sudo yum install -y http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

# リポジトリ確認
$ ll /etc/yum.repos.d/ | grep remi-php72
-rw-r--r-- 1 root root 1314  6月 19 17:28 remi-php72.repo

# Phalconのパッケージ検索
$ yum search --enablerepo=remi-php72 phalcon | grep php72
php72-php-phalcon3.x86_64 : Phalcon Framework

# Phalconのバッケージをインストール
$ sudo yum install -y --enablerepo=remi-php72 php72-php-phalcon3

# インストール確認
$ yum list installed | grep phalcon
php72-php-phalcon3.x86_64      3.4.1-2.el7.remi               @remi-safe

参考サイト

https://docs.phalconphp.com/ja/3.4/installation
https://docs.phalconphp.com/ja/3.4/webserver-setup
https://blog.apibank.jp/make_php_framework_phalcon/

2
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
5