phalcon框架的nginx配置

phalcon是由C編寫的php框架,通過擴展的形式加載,所以速度非???。這里我記錄下遇到的一些問題,以便大家學習和自己的提高。

安裝phalcon

由于我是debian系統(tǒng),所以首先https://phalconphp.com/en/download下載,通過編譯成so擴展:


git clone --depth=1 git://github.com/phalcon/cphalcon.git

cd cphalcon/build

sudo ./install

之后會生成在php的擴展目錄extension-dir(可以通過命令 php-config 查看具體的路徑),之后將phalcon.so引入到php.ini中。

引入的方法有很多,這里由于debian按照不同的運行模式配置php,我就寫一下到nginx的配置:


sudo touch /etc/php5/mod-available/phalcon.ini

之后寫上extension=phalcon.so,然后


cd /etc/php5/fpm/conf.d/ #nginx 的php配置環(huán)境fpm

sudo ln -s /etc/php5/mod-available/phalcon.ini phalcon.ini #設置軟連接

sudo systemctl restart php5-fpm.service #重啟php-fpm

最后可以在phpinfo()中看到phalcon信息,則說明加載成功

安裝Phalcon Developer Tools工具

Phalcon Developer Tools是phalcon的一款自動生成目錄結(jié)構(gòu)的工具,理論上phalcon沒有固定的目錄結(jié)構(gòu),可以隨時使用。

安裝Phalcon Developer Tools的方法有很多http://phalcon.5iunix.net/reference/tools.html,我介紹下最方便的。

通過Composer或者PEAR的方式由于國內(nèi)的原因,不一定能成功。所以我這邊通過git直接下載:


git clone https://github.com/phalcon/phalcon-devtools.git #git上下載

cd phalcon-devtools

ln -s ~/phalcon-devtools/phalcon.php /usr/bin/phalcon #設置全局的環(huán)境變量

chmod ugo+x /usr/bin/phalcon #給所有`u:自己 g:同組 o:其他`人都有有執(zhí)行的權限

如果沒問題,之后就可以用了

zhonglingxiao@aa:/etc/php5/apache2$ phalcon

Phalcon DevTools (2.0.3)

Available commands:
  commands (alias of: list, enumerate)
  controller (alias of: create-controller)
  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)

生成結(jié)構(gòu)并且配置

phalcon create-project store #生成目錄

nginx中進行配置

cd /etc/nginx/site-available/ #進入配置目錄
sudo vi phalcon-hosts.conf #創(chuàng)建配置文件

phalcon-hosts.conf添加

server {
       listen 80;#80端口
       listen [::]:80;
       server_name phalcon.com;
       root /home/zhonglingxiao/learnphp/phalcon/store;
       index index.php index.html;
       location ~ \.php$ {

               include snippets/fastcgi-php.conf;
              fastcgi_pass unix:/var/run/php5-fpm.sock;
              fastcgi_param SCRIPT_FILENAME /home/zhonglingxiao/learnphp/phalcon/store$fastcgi_script_name;
              include fastcgi_params;
        }
         location /{
                  rewrite ^$ public/ last;
                  rewrite ^(.*)$  /public/index.php?_url=$1 last;#重寫的規(guī)則

        }
}

之后:

cd /etc/nginx/site-enable/
sudo ln -s /etc/nginx/site-available/phalcon-hosts.conf phalcon-hosts.conf

然后修改host,127.0.0.1 phalcon.com;
之后重啟nginx就好了 sudo systemctl restart nginx.service;
如果沒問題的話,輸入phalcon.com,就ok了~

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 第一章 Nginx簡介 Nginx是什么 沒有聽過Nginx?那么一定聽過它的“同行”Apache吧!Ngi...
    JokerW閱讀 33,018評論 24 1,002
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,551評論 19 139
  • Welcome 目前網(wǎng)絡上充斥著大量的陳舊信息,讓PHP新手誤入歧途,傳播著錯誤的實踐和糟糕的代碼,這必須得到糾正...
    layjoy閱讀 21,842評論 7 118
  • 為了增進彼此的了解,問話的技巧可以說是一個很有價值的方式,但是有時候它可能沒辦法使你更加了解對方,反而帶來更大的混...
    Fly_Catkin閱讀 847評論 0 0
  • “我才25歲,可我覺得我的人生已經(jīng)過了一輩子那么長了。” 她叫八月,她說她是在八月出生的,所以她的父母給她起名叫八...
    赤子吧啦啦閱讀 377評論 1 4

友情鏈接更多精彩內(nèi)容