[PHP-users 8101] Re: PHP の本体は何処に?

Masashi Ohba php-users@php.gr.jp
Tue, 18 Jun 2002 03:55:45 +0900


大場です。

In message "[PHP-users 8100] PHP の本体は何処に?",Taro Yamamoto wrote...

>mod_php4.c が鍵なんでしょうか?

libphp4.soでは?

ただ、オプティマイザのインストール時は

「Confirm the location of your php.ini file」
「Are you using the Apache web server?」
「Specify the location of your Apache root directory」
「Install has detected PHP version 4.2.1
  Does this look correct? 」

のように聞かれと思うのですが

上記の英文ははインストール画面から
コピー&ペーストと多少の整形をしてますので
間違いではないはずです。

#なので、PHPの実体がどこにあるかなんかまったく聞かれません。

apacheのroot directoryがどこ聞いて来るところで、
その下にあるモジュールを直接読み出してPHPのバージョンを確認してるのか
httpd.confを探してそれに書かれているlibphp4.soの在り処から
モジュールを直接読み出してPHPのバージョンを確認してるのか
よく分かりませんが、次の質問へ行くのに若干またされます。

ただ、apacheのroot directoryがどこかって話は
使ってるapacheのhttpd.confに書いてある話ではないですか?
つまり、「apacheをどのようにインストールしたか」って話が
重要に思うのですが。

#[PHP-users 8084]で加藤さんもそうかいてますよね?

で、apacheをどのようにインストールしたかって話が
レンタル業者任せだったのなら、それはレンタル業者に
問い合わせるべき内容であって、MLで「わからない、わからない」と
言ってても、あなたが分からない以上にあなたが契約している
サーバ屋を知らない第三者には、なおさら分からない話です。

それと、単独で動くものでもないモジュールを「本体」って
言っていいものかという気もするし、
実際「php」ってのを探してるようですから
本体というからにはコマンドラインのPHPを指してるようにも思えるし。
それだと、最初のメールで「executable」と言ったり
次のメールで「DSO」と言ったりで、客観的に見て
「PHPもどうインストールしたのか」第三者には伝わってきません。

OSが何かが分かればまだ推測もできますが
一連の話ではあなたが使ってるOSの話が出てきていません。
別件のメールでFreeBSD 4.4Rとありましたが
複数のOSを使っている人も普通にいますので。
この話がそれとOSが同じかどうかは誰もわかりませんし

FreeBSDでports/packages使っていという仮定ならば
httpdは/usr/local/sbin/
httpd.confは/usr/local/etc/apache
モジュール類は/usr/local/libexec/apache/
です。
/var/db/pkgの下の各ソフトのディレクトリの下の+CONTENTSや
ports treeがマシンにおいてあれば
/usr/ports/www/apache13/pkg-plistに書いてあります
/usr/localや/usr/X11R6をつけて読む必要がありますが。


そして、ports/packagesを使った場合の
root directoryがどこになるのかはhttpd.confに

「ServerRoot "/xxx/yyy/zzz"」

のように書いてるはずです。

#私はFreeBSD使っててもApache+PHP+PostgreSQLは自分でソースから
#手作業でmakeしますので、ソースの標準/usr/local/apacheから変えません。


>PHP 本体は一体何処にあるんでしょうか?

コマンドライン版のphpを探したいんですか?
ってことはコマンドライン版をインストールしてるんですか?
それだと、DSOや*.soの話がでてきた
[PHP-users 8083] や、[PHP-users 8088] と矛盾してませんか?

もし、モジュールのことを「本体」と言ってるなら
「libphp4.so」がご希望の「本体」です。

ただ、頭にも書きましたがオプティマイザのインストール時に
聞かれることは「php.iniの在り処」であり、「apacheのroot」です。
「PHP本体」がどこかって話は一切聞かれません。
オプティマイザのインストール時に必要なのは

「apacheのrootがどこか?」

ってことでは?と思うのですが違いますかね?

/usr/local/apache
/usr/local/lib/php
/usr/local/lib/php.ini
(全部、ソースからmakeする時の標準的なディレクトリ構成)
でオプティマイザが一発でインストールできてるので
ほかの環境でどうなるのか、よく分からないんですけど

--------------------------------------------------
Name  : 大場正志(Masashi Ohba)
E-mail: ohba@netforce.ne.jp
url   : http://www.netforce.ne.jp/~ohba
        コガネメキシコインコの写真あります
Add   : Fukuoka-city, Japan