centos上安装phalcon

分类: PHP,服务器  • 发布时间: 2016-01-22 15:32:42  • 浏览量:19493

Phalcon 是开源、全功能栈、使用 C 扩展编写、针对高性能优化的 PHP 5 框架。 开发者不需要学习和使用 C 语言的功能, 因为所有的功能都以 PHP 类的方式暴露出来,可以直接使用。 Phalcon 也是松耦合的,可以根据项目的需要任意使用其他对象。
Phalcon 不只是为了卓越的性能, 我们的目标是让它更加健壮,拥有更加丰富的功能以及更加简单易于使用!(前面都是抄的文档)

交代一下基本环境:

操作系统:CentOS 6.6 32bit

PHP版本:5.6.16

Nginx版本:1.8

Phalcon版本:2.0.10 下载地址:https://github.com/phalcon/cphalcon/releases

进入安装之前,请确认已安装git gcc make pcre-devel等工具,如果没有安装可以使用下面命令安装:

yum -y install git gcc make pcre-devel

接下来进行Nginx和PHP-FPM的安装,如果简单快速安装,可以参考本文:centos + nginx + php-fpm +mysql的简单配置

准备工作完毕,进行phalcon的安装

cd /usr/local/src/
wget https://github.com/phalcon/cphalcon/archive/phalcon-v2.0.10.tar.gz
tar zxvf phalcon-v2.0.10.tar.gz
cd cphalcon-phalcon-v2.0.10/build/
./install

然后在 /etc/php.d/目录下增加phalcon.ini

vim /etc/php.d/phalcon.ini

在里面添加内容:

extension=phalcon.so
保存退出,重启php-fpm

service php-fpm restart

至此,phalcon已经安装完成,可以在你的phpinfo中查看


接下来我们安装 phalcon-devtools,phalcon-devtools是phalcon的脚手架工具,能够为您自动生成代码。

cd /usr/local/src/
git clone git://github.com/phalcon/phalcon-devtools.git
cd phalcon-devtools/
./phalcon.php commands

可以看到如下内容:

Phalcon DevTools (2.0.9)
Available commands:
  commands         (alias of: list, enumerate)
  controller       (alias of: create-controller)
  module           (alias of: create-module)
  model            (alias of: create-model)
  all-models       (alias of: create-all-models)
  project          (alias of: create-project)
  scaffold         (alias of: create-scaffold)
  migration        (alias of: create-migration)
  webtools         (alias of: create-webtools)

接下来我们用phalcon-devtools生成一些代码(我们这次的网站目录放在/site/pha下面,这个目录可自行更改):

cd /site/
/usr/local/src/phalcon-devtools/phalcon.php create-project pha

这时候会在/site/目录下,生成一个名为pha的目录,该目录下有public和app两个目录,我们只要把域名绑定到public目录下即可。

接下来我们配置一下nginx的虚拟主机

vim /usr/local/nginx/conf/nginx.conf

在配置中的http段内增加如下内容:

    server {
        listen      80;
        server_name pha.code;
        set         $root_path '/site/pha/public/';
        root        $root_path;
        #access_log  /var/log/nginx/$host-access.log;
        #error_log   /var/log/nginx/$host-error.log error;
        index index.php index.html index.htm;
        try_files $uri $uri/ @rewrite;
        location @rewrite {
                rewrite ^/(.*)$ /index.php?_url=/$1;
        }
        location ~ \.php {
                # try_files    $uri =404;
                fastcgi_index  /index.php;
                fastcgi_pass   127.0.0.1:9000;
                include 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 ~ /\.ht {
                deny all;
        }
    }

然后我们重启一下nginx

/usr/local/nginx/sbin/nginx -s reload

更多关于phalcon在nginx中的配置请参见:https://docs.phalconphp.com/zh/latest/reference/nginx.html

接下来我们修改本地的hosts文件,配置一个测试域名:pha.code

vim /etc/hosts

增加一条内容:127.0.0.1   pha.code

然后这时候我们在浏览器中输入http://pha.code,如果我们配置成功,则会看到:

Congratulations!


文章标签: php, linux, centos, phalcon