CentOS6 + Nginx + Phalcon PHP + MongoDBの環境構築手順
Phalcon PHP Frameworkの環境を構築したときの覚書。
環境: CentOS 6.5 x86_64, nginx 1.6.0, php 5.4.29, mongodb 2.6.1-2
PhalconはPHPのエクステンションとしてC言語で実装されたMVCフレームワーク。特徴は何と言っても速さ。
最近はWordPressをベースにすることが多いけどシステム系のサイトを構築するのにいい選択肢になりそう。
1.Phalcon PHPをインストール
公式サイトを参考に。
# yum install gcc make php-devel git
# git clone git://github.com/phalcon/cphalcon.git
# cd cphalcon/build
# ./install
Installing shared extensions: /usr/lib64/php/modules/
# vi /etc/php.d/phalcon.ini
extension=phalcon.so
# /etc/rc.d/init.d/php-fpm restart
確認
# php --info | grep Phalcon
2.Phalcon Developer Toolsをインストール
Phalconの開発ツール群。公式サイトを参考に。
# cd
# git clone https://github.com/phalcon/phalcon-devtools.git
# cd phalcon-devtools/
# ./phalcon.sh
シンボリックリンクを作成
# ln -s phalcon.php /usr/bin/phalcon
# ldconfig
3.nginxの設定
これも公式ドキュメントが十分詳しい。
# vi /etc/nginx/conf.d/hoge.conf
server {
listen 80;
server_name dev.hoge.jp;index index.php index.html index.htm;
set $root_path '/home/httpd/hoge/web/public';
root $root_path;try_files $uri $uri/ @rewrite;
charset utf-8;
client_max_body_size 2M;location = /robots.txt { access_log off; log_not_found off; }
location = /favicon.ico { access_log off; log_not_found off; }location @rewrite {
rewrite ^/(.*)$ /index.php?_url=/$1;
}location ~ \.php {
#try_files $uri =404;
#fastcgi_pass unix:/run/php-fpm/php-fpm.sock;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index /index.php;
fastcgi_buffer_size 32k;
fastcgi_buffers 4 32k;include /etc/nginx/fastcgi_params;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}location ~* ^/(css|img|js|flv|swf|download)/(.+)$ {
root $root_path;
}location ~ /\. {
deny all;
access_log off;
log_not_found off;
}
}
# /etc/rc.d/init.d/nginx configtest
# /etc/rc.d/init.d/nginx reload
4.MongoDBのインストール
YUM経由で更新できるように公式リポジトリを追加。
# vi /etc/yum.repos.d/mongodb.repo
[mongodb]
name=MongoDB Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/
gpgcheck=0
enabled=1
# yum update
# yum install mongodb-org
起動して、自動起動するように登録。
# /etc/rc.d/init.d/mongod start
# chkconfig mongod on
PHP用のドライバをインストール。remiリポジトリが使われた。
# yum install php-pecl-mongo
# /etc/rc.d/init.d/php-fpm restart
5.MongoDBのphpMyAdmin的「RockMongo」をインストール、設定
公式サイトからダウンロードして設置。
# cd /opt/httpdocs/
# unzip rockmongo-1.1.7.zip
# rm rockmongo-1.1.7.zip
# mv rockmongo-1.1.7 rockmongo
公開されているところに設定したのでnginxの設定は省略。本番環境はBasic認証などを推奨。
初期パスワードはadmin/admin
6.開発する上での諸情報
コーディング規約
サンプルなどは公式ドキュメントが充実している。
< Related Posts >