Re: phpinfoが表示されない
斉藤だったりします。
# 直接メイルがありましたが、debian-japanese@lists.debian.org にも CC
# しておきます。
At Sat, 21 Apr 2007 17:25:50 +0900,
T. Fujita wrote:
> phpinfo.phpのあとのスラッシュ「/」はメールリストに送る際に間違って入れたようで、実際には付いていません。それでもやはりあの美しいphpinfo画面は出てこないですね。
> プロセスはこんなふうだと理解しています。
> 1)http://localhost/phpinfo.phpというリクエストがWebサーバー(Apache)に送られる。;
> 2)ApacheがリクエストをPHPに渡す。
> 3)PHPモジュールがURLに対応するPHPプログラムを実行する。
> 4)WebサーバーがPHPプログラムの実行結果をHTMLとしてブラウザに返す。
> (以上、「はじめてのFedora Core 4 Linuxサーバ構築篇」、秀和システム)
>
> この2番が行われていないように思うのですが、いかがでしょう。
まず、バージョン上は sid ですが、手元に入れてテストをしてみました。
インストールした手順は以下のとおりです。
sudo aptitude install libapache-mod-php4 php4 apache
でインストール。
debconf への返事は基本的にデフォルトで選択された状態で、モジュールの設
定のみ php4 のモジュールを有効にすることだけはデフォルトではない状態に。
root で
echo "<?php phpinfo(); ?>" > /var/www/phpinfo.php
を実行。
適当なブラウザで
http://localhost//phpinfo.php
にアクセス。
すると、問題なく表示されました。
他に影響がないのであれば、apache/php 関連を完全に remove もしくは
purge して再インストールすると問題なく動作すると思います。
> おっしゃる通り、モジュールのロードはできている気がします。
> このLoadModule文はmodules.confにある他の文と非常によく似ているので、当
> 初、ここに入っているべきものかと思いましたが、他の文はすべて
> ...apache/1.3/mod_〜.so
> という形になっているのに対し、libphp4.soだけmod_が付きません。ちぐはぐな
> 気がして、httpd.confの中のDSOに関するコメントの下に入れておりました。
ファイル名は飾りのようなものです。
適切にファイル名がフルパスで記述できていれば、問題になることはありませ
ん。
/etc/apache/httpd.conf およびこの中で include している設定に関するファ
イル内部で
LoadModule php4_module /usr/lib/apache/1.3/libphp4.so
と呼ばれていれば良いはずです。
> Debianで初めてPHPを導入したときは、PHP5でした。FedoraやVineでの経験か
> ら、apacheはdevelやutilが付いているものをインストールしたかったのです
> が、Debianでは体系が異なっていたので、似てそうなものを適当にインストール
> しました。1.3も2も混ぜて。
> このときの影響が出ているのかもしれません。
その状況であれば、apache2 が php のモジュールがない状態で動いている可
能性は否定できませんので、動かないとしてもおかしくないでしょう。
以下のことを実行してみてください。
1)ご自分の行いたいこと/要件を確定させる
2)apache のバージョンを 1 系にするか 2 系にするか、php を 4系でいくか
5 系でいくかを決定する
3)aptitude などで php/apache に関するパッケージをすべて削除
4)apahce/php の決めたバージョンについて apache*/php*/libapache*-mod-php*
を確実に指定してインストール
5)それぞれ debconf の設定については php のモジュールだけ入れる以外は基
本的に逆らわない :)
6)phpinfo で表示されるかをテストする
Debian の場合、apache や php は複数のメジャーバージョンに関するパッケー
ジが存在しますので、「とりあえず全部」という感じのやりかたは、高確率で
失敗します。
逆にしっかり要件を固めるなどをしたあとには、その分だけ無駄を省いた形で
運用できるというメリットもあります。
例:開発用のライブラリは別パッケージになるので入れる必要性がなければ入
れない
また、Debian では設定を特別なコマンドで行うことがあり、そのコマンドを
使うことでかなり楽に運用できる面もあり、このあたりはそのパッケージのド
キュメント(README.Debian{,gz})を良くよむのが近道です。
--
斉藤直彦 <http://www.apt-get.jp/>
Reply to: