suphpのsrc.rpmを作成してみました。

■suPHP
http://www.suphp.org/Home.html

■使用OS
CentOS 5.6 64bit
RHEL 6.1 64bit

■使用Apache
CentOS : CentOS標準Apacheをインストール
RHEL : HTTP SERVER PROJECTで公開されているhttpd.specを利用してインストール

■前提条件
phpは既にインストールされていること。
yumでインストールした場合は、module(/etc/httpd/conf.d/php.confなど)を無効化しておくこと。

■suPHP
suphp-0.7.1-1.src.rpm
MD5(suphp-0.7.1-1.src.rpm)= d6ea55c087fa28859261475b665e691a
MD5(suphp-0.7.1-1.src.rpm)= 54c613ee8088e7697f835ec8711f213b

(1)suPHPのsrc.rpmをダウンロード

[root@example ~]# wget http://www.kurobuti.com/download/suphp/0.7.1/suphp-0.7.1-1.src.rpm

(2)suphp-0.7.1-src.rpmをインストール
[root@example ~]# rpm -ivh suphp-0.7.1-1.src.rpm

※RHEL6.1の場合
[root@example ~]# mkdir -p rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}
[root@example ~]# rpm -ivh suphp-0.7.1-1.src.rpm

(3)suphpをrpm化
[root@example ~]# cd /usr/src/redhat/SPECS/
[root@example SPECS]# vi suphp.spec
%define         httpd_extra     /etc/httpd/conf/extra
↓ # 変更
%define         httpd_extra     /etc/httpd/conf.d
[root@example SPECS]# rpmbuild -bb suphp.spec
※標準パッケージでインストールしたApacheに関しては修正が必要。

※RHEL6.1の場合
[root@example ~]# cd rpmbuild/SPECS
[root@example SPECS]# rpmbuild -bb suphp.spec

(4)suphpのインストール
[root@example SPECS]# cd ../RPMS/x86_64/
[root@example x86_64]# rpm -ivh suphp-0.7.1-1.x86_64.rpm
準備中...                ########################################### [100%]
   1:suphp                  ########################################### [100%]

(5)suphpの設定
[root@example ~]# cd /etc/httpd/conf
[root@example conf]# vi httpd.conf
# --以下を最終行にでも追加--
# SuPHP
SuPHP_UserGroup example example
[root@example conf]# cd /etc/suphp/
[root@example suphp]# vi suphp.conf
application/x-httpd-php="php:/usr/bin/php"
↓ # 変更
application/x-httpd-php="php:/usr/bin/php-cgi"

※RHEL6.1の場合
[root@example ~]# cd /etc/httpd/conf
[root@example conf]# vi httpd.conf
User daemon
Group daemon
↓ # 変更
User apache
Group apache

# --以下を最終行にでも追加--
# SuPHP
SuPHP_UserGroup example example
Include conf/extra/httpd-suphp.conf
[root@example conf]# cd /etc/suphp/
[root@example suphp]# vi suphp.conf
application/x-httpd-php="php:/usr/bin/php"
↓ # 変更
application/x-httpd-php="php:/usr/bin/php-cgi"

※ここでは、「example」と言うユーザーがphpを実行します。

その他設定例
http://www.kurobuti.com/blog/?p=3270

(6)Apacheを起動
[root@example ~]# service httpd configtest
Syntax OK
[root@example ~]# service httpd start
httpd を起動中:                                            [  OK  ]
[root@example ~]# chkconfig httpd on

(7)DocumentRoot配下に「index.php(phpinfo)」でも作って動作するか確認
注)index.phpは「example」ユーザー権限じゃないとだめ。


6月 27, 2011 at 9:58 pm by 黒ぶちメガネ
Category: Linux