PHPのMCrypt対応(CentOS4.4/4.5編)
CentOS4.4 の場合、標準のPHPでは MCrypt をサポートしていないため DB の暗号化等ができません。おやじの扱っている例でいえば、
Maia Maiguard でのパスワードの暗号化ができません。
そこで、標準の SRPM にパッチをあてて MCrypt 対応にしてみました。作成した RPM は
ダウンロードにアップしておきますので、利用してください。
バージョンアップ時にmcryptが個別対応だとアップできないので、yumも使用できるようにしました。
■事前準備
PHP を MCrypt 対応するとはいっても、libmcrypt モジュールがないことには始まりません。しかしながら、CentOS4.4 では残念ながら
libmcrypt はサポートされていません
そこで、 yum で dag リポリトジからRHEL4用の libmcrypt-devel をインストールしておきます。( dag リポリトジ対応は
こちらを参照)
# yum install libmcrypt-devel [Enter]
|
■MCryptモジュールの作成
MCrypt モジュールを作成するといっても特段難しい話ではありません。最新の SRPM を持ってきて、SPEC ファイルにパッチをあててリビルドするだけです。
但し、関連する多くの xxx-devel パッケージをインストールする必要があります。これらについては、特に触れませんがリビルドすると依存関係のエラーがでるので、全てインストールしてください。
- SRPM をダウロードしてきて、展開する。
# cd /usr/src/redhat/SOURCES [Enter]
# wget http://ftp.riken.go.jp/Linux/centos/4.4/updates/SRPMS/php-4.3.9-3.22.src.rpm [Enter]
# rpm -Uvh php-4.3.9-3.22.src.rpm [Enter] |
- MCrypt 用のパッチをあててリビルドし、mcrypt をインストールする。
# cd ../SPECS [Enter]
# wget http://www.aconus.com/~oyaji/centos/php-4.3.9-3.22.mcrypt.centos4.4.patch
[Enter]
# patch -p0 < php-4.3.9-3.22.mcrypt.centos4.4.patch [Enter]
# rpmbuild -ba php.spec --with mcrypt [Enter]
# rpm -Uvh ../RPMS/i386(x86_64)/php-mcrypt-4.3.9-3.22.i386(x86_64).rpm
[Enter] |
MCrypt モジュールだけが、単独だとバージョンアップが厄介なのでyumを使えるようにしました。他のリポリトジと同じように扱えます。但し、おやじはCentOSは常用していないのでアップは遅れ気味なので、突付いていただければ早くなるかも・・・。
- 以下のようなおやじのリポリトジ用の設定ファイル(/etc/yum.repos.d/oyaji.repoでもしてください)を作成する。
[oyaji]
name=Oyaji RPM Repository for RHEL4/CentOS4
baseurl=ftp://ftp.aconus.com/yum/repos/centos4.5/updates/$basearch/RPMS/
enabled=1
gpgcheck=1
gpgkey=http://www.aconus.com/~oyaji/ftp/RPM-GPG-KEY-Oyaji |
- (おやじのGPG keyをインポートする。) 上記でgpgkeyの記述があれば不要。
# rpm --import http://www.aconus.com/~oyaji/ftp/RPM-GPG-KEY-Oyaji [Enter] |
- yum updateを行う。phpのmcryptモジュールはおやじのところからアップデートされる。その他は従来どおり。
Top Pageへ