Mac從零安裝yaf

加入了新的團隊,團隊中用到了yaf這個php web framework(聽說是目前php web框架中性能最高的),本身也開始學了起來。由於本身以前幾乎沒有接觸過PHP,因此安裝yaf的整個過程仍是略顯艱辛的。通過本身的折騰和同事的幫忙,終於在Mac上成功安裝了yaf,感受須要寫一篇簡易教程記錄一下,以防本身和他人從此再踩坑。php

步驟1:安裝XAMPP

XAMPP是Apache + MySQL + PHP + Perl的一鍵傻瓜安裝包,在官網上安裝Mac版的安裝包。安裝完畢以後,打開http://127.0.0.1/,若是看到了xampp的歡迎頁面,說明就成功了。
html

好了,咱們須要的Apache和PHP都安裝好了,這些先放着,開始安裝yafgit

步驟2:安裝yaf

先在yaf官網上面下載最新的源碼,而後按照官網上的教程進行安裝。其實就是這四個命令:github

$PHP_BIN/phpize
./configure --with-php-config=$PHP_BIN/php-config
make
make install

須要注意兩個問題:web

  1. $PHP_BIN指的是php所在的bin目錄,並且必定要是以前XAMPP安裝的php的bin目錄,也就是/Applications/XAMPP/bin/
  2. 若是出現權限問題,須要在命令前面加上sudo

make install以後,系統會告訴你編譯出一個yaf.so,而且存放在某個文件夾下面,咱們要的就是這個文件。具體存放在哪你能夠不用關心,由於php是知道在哪的。接下來,將yaf.so加入配置文件php.ini中。apache

vi /Applications/XAMPP/etc/php.ini

加入如下語句:框架

extension=yaf.so

使用php -m,查看yaf是否已經加入phpide

/Applications/XAMPP/bin/php -m
[PHP Modules]
……
省略一些模塊
……
xmlwriter
xsl
yaf
zip
zlib

[Zend Modules]

若是看到了yaf,就說明yaf這個模塊已經載入成功了。工具

步驟3:生成一份sample應用

按照yaf官網上面的教程,生成一份樣例的yaf應用,具體步驟以下:性能

下載php-yaf源碼

git clone https://github.com/laruence/php-yaf/

運行代碼生成工具

$PHP_YAF_SRC/tools/cg/yaf_cg sample

將sample文件夾存在一個單獨的路徑,用做Apache的virtual host的根目錄,好比我就放在了/Users/Quxiao/dev/apache_virital_root/sample這個路徑。

步驟4:配置Apache

編輯virtual host配置文件

vi /Applications/XAMPP/xamppfiles/etc/extra/httpd-vhosts.conf

將其中的8080端口的<VirtualHost>配置改掉,修改端口以及DocumentRoot,例如

#端口能夠改爲本身想要的端口
<VirtualHost *:8081>
    ServerAdmin webmaster@dummy-host2.example.com
    #該路徑就是上一步樣例yaf應用的路徑
    DocumentRoot "/Users/Quxiao/dev/apache_virital_root/sample"
    ServerName dummy-host2.example.com
    ErrorLog "logs/dummy-host2.example.com-error_log"
    CustomLog "logs/dummy-host2.example.com-access_log" common
</VirtualHost>

編輯Apache配置文件

vi /Applications/XAMPP/xamppfiles/etc/httpd.conf

加入上面virtual host的配置,在文件中查找,去掉Include前的註釋符號#

# Virtual hosts
Include etc/extra/httpd-vhosts.conf

開啓virtual host的端口

#Listen 12.34.56.78:80
Listen 80

# 添加8081端口
Listen 8081

添加訪問權限配置,加入如下內容:

<Directory "/Users/Quxiao/dev/apache_virital_root/sample">
    #   
    # Possible values for the Options directive are "None", "All",
    # or any combination of: 
    #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
    #   
    # Note that "MultiViews" must be named *explicitly* --- "Options All"
    # doesn't give it to you.
    #   
    # The Options directive is both complicated and important.  Please see 
    # http://httpd.apache.org/docs/trunk/mod/core.html#options
    # for more information.
    #   
    #Options Indexes FollowSymLinks
    # XAMPP
    Options Indexes FollowSymLinks ExecCGI Includes

    #   
    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be "All", "None", or any combination of the keywords:
    #   Options FileInfo AuthConfig Limit
    #   
    #AllowOverride None
    # since XAMPP 1.4:
    AllowOverride All 

    #   
    # Controls who can get stuff from this server.
    #   
    Require all granted
</Directory>

其實就是將本來已有的<Deirectory>部分複製一份,而後把路徑改爲以前設置的virtual host的DocumentRoot

步驟5:重啓Apache並訪問yaf應用

在Launchpad中開發XAMPP的管理器,在Manager Servers中將Apache重啓

激動人心的時刻到了,訪問http://127.0.0.1:8081/,看是否出現了

Hello World! I am Stranger

若是出現了,就表示你已經在Mac上成功安裝了yaf!

-- EOF --

相關文章
相關標籤/搜索