Suhosinの野良portsを作った
MacportsでSuhosinが入れられるように、githubに野良Portsを作りました。怪しい英語で説明も書いてみました:http://wiki.github.com/hnw/macports-repos-hnw
Suhosinというのは「なぜSuhosinを使うのか」でも紹介しましたが、PHPのセキュリティレベル向上のためのPHPに対するパッチ、およびエクステンションを提供するプロジェクトです。
インストール方法
まず、野良Portsをローカルに取得します。
$ cd /opt/local/var/ $ sudo git clone git://github.com/hnw/macports-repos-hnw.git $ cd /opt/local/var/macports-repos-hnw/ $ sudo portindex $ sudo vi /opt/local/etc/macports/sources.conf (「file:///opt/local/var/macports-repos-hnw」を追記します)
次に、php5(+suhosinすることでSuhosinパッチが当たります)とphp5-suhosin(Suhosinエクステンション)をインストールします。
$ sudo port deactivate php5 $ sudo port install php5 +mysql5 +postgresql83 +sqlite +pear +suhosin $ sudo port install php5-suhosin
php.iniを書き換え、Suhosinエクステンションをロードするよう指定します。Apacheの再起動も忘れずに。
extension=suhosin.so
注意点
第一の注意点は、githubからpullしてこないとパッケージが更新されないことです。気が向いたタイミングで下記のようにする必要があります。
$ cd /opt/local/var/macports-repos-hnw $ sudo git pull $ sudo portindex
port selfupdateとかでアップデートできればいいんですけど、実現する方法を僕が知りません。
次に、オフィシャルのphp5パッケージと名前がかぶっています。オフィシャルのphp5パッケージが更新されたのに、この野良リポジトリを優先していてphp5は古いまま、ということが起こりえます。パッケージ名を変えるとかした方がいいんでしょうか。
本当はMacports本家に入れてもらうのが正解なんでしょうね。Suhosinパッチ&SuhosinエクステンションはPHP本体のリリースより数日遅れてくるので、php5パッケージに含めるのは微妙な気がしますけど。