SSブログ

PHPインストール奮闘記 [PC/Internet]

※このブログ記事では、WindowsXP上のVMWare PlayerにインストールしたFedoraCore5をベースに書いていますので、あらかじめご了承くださいませ。

 

http://www.php.net/downloads.phpからダウンロードすれば良い。
(2006年10月29日現在、最新バージョンは5.1.6でした)
/usr/local/src/ディレクトリへ保存。
tar -xzvf php-5.1.6.tar.gzで解答。
php-5.1.6ディレクトリへ移動して、以下のコマンドを実行。
./configure --without-mysql --with-apxs=/usr/local/apache2/bin/apxs --enable-mbstr-enc-trans --enable-mbstring --enable-mbregex --enable-versioning
これで、DBインターフェースとしてのmysqlを無効にし、共有ライブラリ作成用のApache2補助ツールapxsの場所を指定し、HTTPからの入力を自動的にPHPが試用する内部文字コードに変換する機能を有効にし、日本語処理を行う関数を有効にし、PHP3のモジュールとPHP4のもモジュールが同居することを可能にします。

make
make install
cp /usr/local/php-5.1.6/php.ini-dist /usr/local/lib/php.ini
これで、PHP5モジュールがインストールされ、/usr/local/apache2/conf/httpd.confに
 LoadMocule php5_module libexec/libphp5.so
が書き込まれたハズ。

PHPの拡張子である".php"をApacheに認識させるため、/usr/loca/apache2/conf/mime.typesに以下の2行を追記。
 application/x-httpd-php php
 application/x-httpd-php-source phps

Apacheを再起動するため、/etc/init.d/httpd restartコマンドを実行すると・・・
「Cannot load /usr/local/apache2/modules/libphp5.so into server: /usr/local/apache2/modules/libphp5.so: cannot restore segment prot after reloc: Permission denied」などとエラーメッセージが・・・(T-T)
このエラーメッセージをそのままGoogleってみたら・・・FedoraCore5などの最新のOSでは、SElinux基準になっておりセキュリティーがかなりタイトになっているため、このエラーはlibphp5.soライブラリのセキュリティーコンテキストがOSとあっていないらしい。(実行権がない)ここをを変更してやる必要があります。
で、そのコマンドは、以下のとおり。
chcon -c -v -R -u system_u -r object_r -t lib_t /usr/local/apache2/modules/libphp5.so

これでApacheを再起動できるハズ。
・・・Apache起動せず。やはり同じエラーメッセージが表示されます。(´Д`|||)

う~ん・・・どうすればいいんだろう?
とりあえず・・・

/etc/init.d/iptables stopコマンドでファイアウォールを停止して
chkconfig iptabels offコマンドでファイアウォールの自動起動をOFFにする。
setenforce 0コマンドで、SElinuxをpermissiveモードにする。
/etc/selinux/configをviエディタで開いて、SELINUX=enforcingの行を=disableにする。
これでSElinuxが勝手に動作しないようになる。
セキュリティは落ちるけど・・・

これでApacheを起動すると、ちゃんと起動しました。
ふぅ・・・ (〃´o`)=3
ホストOS(WindowsXP Professional)で、IEなどのブラウザからhttp://ゲストOSのIPアドレス/info.phpを開くと・・・ちゃんとPHPの情報が表示されました。

 

これで、ApacheのモジュールとしてのPHPインストールは終了。
次は、コマンドラインとしてのPHPインストール。

/usr/local/src/ディレクトリ内にphp-bin/ディレクトリを作成して、そこへphp-5.1.6.tar.gzを/usr/local/src/からコピー。
tar -xzvf php-5.1.6.tar.gzで解答。
php-5.1.6ディレクトリへ移動して、以下のコマンドを実行。
./configure --without-mysql --enable-mbstr-enc-trans --enable-mbstring --enable-mbregex --enable-force-cgi-redirect
make
make install

これで、コマンドライン版PHPが/usr/local/bin/phpとしてインストールされました。
さてさて・・・

この後は、postgreSQLのインストールですが・・・
続きは、また今度です。


nice!(0)  コメント(0)  トラックバック(1) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

Facebook コメント

トラックバック 1

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。