どんな事でもお気軽にお問い合わせください
0120-803-656
24時間受付対応致します

CentOSにPhalconの実行環境を用意する


こんにちは。
開発チームのワイルド担当、まんだいです。

本日勉強会でAPI開発について登壇し、PHP最速との呼び声高いPhalconについて、お話しする機会があります。

が、しかし、ビヨンド技術ブログには、Phalconの記事が一つもない!という衝撃の事実。

まずはインストールから、Phalconを始めてみましょう!

 

PHPのインストール

phalconはPHPのフレームワークなので、PHPがインストールされていないと利用できません。
PHPをyumでインストールする場合、CentOS7系の標準リポジトリから取得したPHPのバージョンは5.4になります。
CentOS6系に至っては5.3。両方ともセキュリティアップデートも終了している、もはや化石です。

このような状況ですので、yumでインストールする際は、標準リポジトリ以外のところから然るべきバージョンのPHPを取得するところから始める事をおすすめします。
ここでは、PHP7.0 + phalcon3.0.3の組み合わせをインストールする手順を示します。

remiリポジトリのPHPを使う手順になりますが、依存関係の問題から、epelリポジトリを先にインストールしておく必要があります。

 

CentOS 6 系

 

epelリポジトリのインストール
sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm

 

remiリポジトリのインストール
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-6.rpm

 

phpのインストール

下のコマンドはPHP本体のみのインストールなので、日本語対応が必要なら php-mbstring を、mysql用ライブラリが必要なら php-mysqlnd を。
不足分を追記してください。

sudo yum --enablerepo=remi-php70 install php

 

CentOS 7 系

 

epelリポジトリのインストール
sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

 

remiリポジトリのインストール
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm

 

phpのインストール

下のコマンドはPHP本体のみのインストールなので、日本語対応が必要なら php-mbstring を、mysql用ライブラリが必要なら php-mysqlnd を。
不足分を追記してください。

sudo yum --enablerepo=remi-php70 install php

 
PHPのインストールは以上です。
続いて本題のphalconのインストールを始めます!

 

選べる2通りのインストール! 手早くyumでインストール

CentOSのパッケージ管理システム、yumでサッとインストールするのは非常に簡単です。
しかし、悩ましいのがphalconのrpmを、phalconの公式リポジトリから取得するか、remiから取得するか。
公式リポジトリの方しか利用していないので何とも言えませんが、remi版もPHPのコンパイル環境と似通ったものでコンパイルされていると思われるので特に問題はないと思われます。
次にインストールする際は、remi版を使ってみようと思いますので、その際はこちらに情報を追加します。

今回は、phalcon公式リポジトリからインストールする手順を示します。

 

phalconのリポジトリのインストール

phalconをリポジトリからインストールする場合、phpのバージョンにさえ気をつければ導入は非常に簡単です。

curl -s https://packagecloud.io/install/repositories/phalcon/stable/script.rpm.sh | sudo bash

 

phalconをインストール
sudo yum install php70u-phalcon

 

 

ディレクトリ構造が特殊な場合は、ソースコンパイルでインストール

githubからソースコード一式をcloneしてコンパイルするのも、もちろん問題ありません。

ただ、コンパイルには、依存ライブラリが必要なので、事前にインストールしておきます。
こちらはyumで一括インストールできます。

sudo yum --enablerepo=remi-php70 install gcc make pcre-devel php-devel

 
必要なライブラリが揃ったら、インストールスクリプトを実行するだけです。
こちらはPHPのバージョンに関係なくコマンドは変わりません。
32bit / 64bit でコンパイル処理が異なるようですが、それも自動で判別してくれるので通常は特に指定は不要です。

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

# phalcon.soを読み込む設定ファイルを設置
echo "extension-phalcon.so" | sudo tee /etc/php.d/phalcon.ini

 

 

webサーバーを再起動して追加できているか確認

 

CentOS 6 系の場合

CentOS6系の場合、service コマンドから起動します。

# apache の場合
sudo service httpd [start|restart]

# php-fpm の場合
sudo service php-fpm [start|restart]

 

CentOS 7 系の場合

CentOS7系の場合、systemctl コマンドから起動します

# apache の場合
sudo systemctl [start|restart] httpd

# php-fpm の場合
sudo systemctl [start|restart] php-fpm

 

 

phalcon-devtoolsのインストール

phalconには、devtoolsというコンソールコマンドがあって、これは先ほどのrpmやコンパイルしたソースには含まれていません。

このツールもgithub上にありますので、git cloneでソースを取得します。

git clone https://github.com/phalcon/phalcon-devtools.git
cd phalcon-devtools
source phalcon.sh

# phalcon.phpをphalconコマンドとして利用できるようシンボリックリンクを作成
sudo ln -s $(pwd)/phalcon.php /usr/local/bin/phalcon

# 実行権限を追加
sudo chmod a+x /usr/local/bin/phalcon

 
インストールが完了したら、適当なディレクトリで以下のコマンドを実行してみます。

phalcon create-project test-app

 
カレントディレクトリ直下にtest-appというディレクトリができていれば成功です。

今後もPhalcon関連の記事をどんどんアップしていこうと思っていますのでよろしくお願いします。

 
以上です。


お問い合わせ 採用情報 エンジニアブログ
ISO27001認証
Contact PageTop
株式会社ビヨンド

© beyond Co., Ltd. All rights reserved.

mautic is open source marketing automation