The Sixwish project

CentOS 5 ZendFramework Setting

ZendFramework セットアップ

ZendFrameworkのセットアップを行ないます。
方法としては、「PEARと同じディレクトリに入れる」「適当な場所に入れてパスを通す」の二つです。
今回は後者の方法で行ないます。

準備

ZendFrameworkを入れるディレクトリの確保、パスの設定などを行ないます。
ZendFrameworkのファイルは/var/www/library/Zendに入れることにします。

また、コンテンツ関連は、webapps配下に構築する形を取ります。

[root@sixwish ~]# ls -lZ /var/www/
drwxr-xr-x  root root system_u:object_r:httpd_sys_script_exec_t cgi-bin
drwxr-xr-x  root root system_u:object_r:httpd_sys_content_t error
drwxr-xr-x  root root system_u:object_r:httpd_sys_content_t html
drwxr-xr-x  root root system_u:object_r:httpd_sys_content_t icons
[root@sixwish ~]# mkdir /var/www/library
[root@sixwish ~]# mkdir /var/www/webapps
[root@sixwish ~]# ls -lZ /var/www/
drwxr-xr-x  root root system_u:object_r:httpd_sys_script_exec_t cgi-bin
drwxr-xr-x  root root system_u:object_r:httpd_sys_content_t error
drwxr-xr-x  root root system_u:object_r:httpd_sys_content_t html
drwxr-xr-x  root root system_u:object_r:httpd_sys_content_t icons
drwxr-xr-x  root root user_u:object_r:httpd_sys_content_t library
drwxr-xr-x  root root user_u:object_r:httpd_sys_content_t webapps
[root@sixwish ~]# chcon -v --reference=/var/www/html /var/www/library
context of /var/www/library changed to system_u:object_r:httpd_sys_content_t
[root@sixwish ~]# chcon -v --reference=/var/www/html /var/www/webapps
context of /var/www/webapps changed to system_u:object_r:httpd_sys_content_t
[root@sixwish ~]# ls -lZ /var/www/
drwxr-xr-x  root root system_u:object_r:httpd_sys_script_exec_t cgi-bin
drwxr-xr-x  root root system_u:object_r:httpd_sys_content_t error
drwxr-xr-x  root root system_u:object_r:httpd_sys_content_t html
drwxr-xr-x  root root system_u:object_r:httpd_sys_content_t icons
drwxr-xr-x  root root system_u:object_r:httpd_sys_content_t library
drwxr-xr-x  root root system_u:object_r:httpd_sys_content_t webapps
[root@sixwish ~]#

ディレクトリの作成、SELinuxのタイプ付けを行ないます。
これで準備完了です。

ダウンロード、セットアップ

ZendFraeworkのパッケージをダウンロード。展開後、指定の場所へコピーします。

[root@sixwish www]# cd /usr/local/src/
[root@sixwish src]# wget http://framework.zend.com/releases/ZendFramework-1.0.1/ZendFramework-1.0.1.tar.gz
--hh:ii:ss--  http://framework.zend.com/releases/ZendFramework-1.0.1/ZendFramework-1.0.1.tar.gz
framework.zend.com をDNSに問いあわせています... xxx.xxx.xxx.xxx
framework.zend.com|xxx.xxx.xxx.xxx|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 3305153 (3.2M) [application/x-gzip]
Saving to: `ZendFramework-1.0.1.tar.gz'

100%[========================================] 3,305,153   --.--K/s

--hh:ii:ss-- (--.-- KB/s) - `ZendFramework-1.0.1.tar.gz' を保存しました [3305153/3305153]

[root@sixwish src]# tar xzf ZendFramework-1.0.1.tar.gz
[root@sixwish src]# cp -r ZendFramework-1.0.1/library/* /var/www/library/
[root@sixwish src]# cd /var/www/library/
[root@sixwish library]# ls
Zend
[root@sixwish library]# chown -R root:root *
[root@sixwish library]#

ファイルを置いたら、php.iniを編集して、パスを通します。

[root@sixwish library]# cd ~
[root@sixwish ~]# cp /etc/php.ini /etc/php.ini.`date -I`
[root@sixwish ~]# vi /etc/php.ini
*** /etc/php.ini.YYYY-mm-dd       YYYY-mm-dd --:--:--.000000000 +0900
--- /etc/php.ini        YYYY-mm-dd --:--:--.000000000 +0900
***************
*** 509,515 ****
        ;;;;;;;;;;;;;;;;;;;;;;;;;

        ; UNIX: "/path1:/path2"
!       ;include_path = ".:/php/includes"
        ;
        ; Windows: "\path1;\path2"
        ;include_path = ".;c:\php\includes"
--- 509,515 ----
        ;;;;;;;;;;;;;;;;;;;;;;;;;

        ; UNIX: "/path1:/path2"
!       include_path = ".:/var/www/library"
        ;
        ; Windows: "\path1;\path2"
        ;include_path = ".;c:\php\includes"
[root@sixwish ~]# 

これでパスが通る状態になります。

後はコントローラを使う場合は、mod_writeを組み込んだりする必要がありますが、そこはそれぞれで。