Intel iMacを使っています。

http://jamlog.podzone.org/index.php?id=562
を参考に現在ローカルとしてPHP5を動かそうとしていますが、
make install までできたのに関わらず、
「php -v」でも4.3のままです。
うまくインストールされていないかもしれないのですが、
その確認を含めて、正しくターミナルから使える方法、
もしくはその方法が紹介されているページを教えてください。

また、インストールできたなら、ローカル環境でウェブアプリを動かすため、httpd.confを編集する必要があると思いますが、その編集内容および、手順がわかればなおありがたいです。

PHP4は既に動いているのですが、PHP5をMacで動かす情報はあまり見つけられませんでした。よろしくお願いします。

回答の条件
  • URL必須
  • 1人5回まで
  • 登録:2006/04/26 19:31:05
  • 終了:2006/04/26 23:56:35

回答(3件)

id:toguo No.1

toguo回答回数72ベストアンサー獲得回数32006/04/26 20:13:19

ポイント30pt

MAMPを利用されるのは如何でしょうか。

MAMP - by webEdition

OSXの中の設定を変える事なくPHP4とApache+PHP+MySQL環境を用意出来ます。

id:masakiplus

PHP5もちゃんと入っているようですね。

ニーズを全部満たしているようです。ありがとうございます。

ただ、せっかく以前にインストールした(?)PHP5を使ってみたいので、もう少し解答を募集します。

2006/04/26 21:23:33
id:tadashi0805 No.2

tadashi0805回答回数287ベストアンサー獲得回数292006/04/26 20:51:02

ポイント30pt

標準で入っているPHP 4は、/usr/binに入っています。

ソースからmakeしてmake installしたものですと、特に指定しないと/usr/local/binに入ると思います。まずは、make installを行った時に、どのディレクトリにインストールしたかを確認してください。

インストールした方を優先的に使うためには、シェルの環境変数PATHにインストールディレクトリを一番手前に追加設定する必要があります。

例えば、/usr/local/binを追加するには、ホームディレクトリに.profileというファイル名で、内容を

export PATH=/usr/local/bin:$PATH

と入れてください。

httpd.confは、root権限でないと編集できませんので、sudo vi httpd.confなどとして、管理者のパスワードを入れてください。ファイルは、/private/etc/httpdにあります。

編集するところは、

LoadModule php4_module libexec/httpd/libphp4.so

AddModule mod_php4.c

の2行の4を5にそれぞれ変更してください。

また、phpをインストールした時に入るはずのlibphp5.soを、Apacheの拡張モジュールディレクトリ/usr/libexec/httpdに入れてください。

http://q.hatena.ne.jp/

id:masakiplus

前半の環境変数の部分は問題なく設定できました。ありがとうございます。

後半のhttpd.confの部分ですが、

指定された通り、libphp5.soをコピーした後に編集しましたが、

ターミナルでは

Syntax error on line 241 of /etc/httpd/httpd.conf:

Cannot load /usr/libexec/httpd/libphp5.so into server: (reason unknown)

/usr/sbin/apachectl graceful: httpd could not be started

となってうまく使えていないようです。

(241はLoadModuleの行です)

何かアドバイスがあれば幸いです。

2006/04/26 22:38:07
id:tadashi0805 No.3

tadashi0805回答回数287ベストアンサー獲得回数292006/04/26 23:20:37

ポイント20pt

Cannot loadとエラーが出ているということは、/usr/libexec/httpd/libphp5.soファイルが存在しないか、Apacheが読み込むことのできないフォーマットになっているかのどちらかです。

ターミナルから、

ls -l /usr/libexec/httpd/libphp5.so

と打って、

  • rwxr-xr-x 1 root wheel 14013908 Jan 10 22:24 /usr/libexec/httpd/libphp5.so

のように、ファイル自体はきちんとあるようでしたら、makeした時のconfigureオプションを確認してください。

ターミナルから

php -r 'phpinfo();'

と打ってください。ここで動かすphpコマンドはPHP 5の奴です。

で、ずらずらと結果が出てきます。

その中に、以下のようにConfigure Commandという長い行があります。

Configure Command => '/SourceCache/apache_mod_php/apache_mod_php-18.4/php/configure' '--prefix=/usr' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--disable-dependency-tracking' '--with-apxs' '--with-ldap=/usr' '--with-kerberos=/usr' '--enable-cli' '--with-zlib-dir=/usr' '--enable-trans-sid' '--with-xml' '--enable-exif' '--enable-ftp' '--enable-mbstring' '--enable-mbregex' '--enable-dbx' '--enable-sockets' '--with-iodbc=/usr' '--with-curl=/usr' '--with-config-file-path=/etc' '--sysconfdir=/private/etc' '--with-mysql=/usr' '--with-mysql-sock=/var/mysql/mysql.sock'

この行に、--with-apxsが含まれているかどうかを確認してください。このオプションが、Apacheのライブラリ形式で作る指定です。

http://www.bitlink.co.jp/server/lin_php4.htm

↑ここの解説はPHP 4ですが、PHP 5でも同じことです。

これがもし付いていないようですと、configureからやり直して再度make後、make installを行う必要があります。

id:masakiplus

ありがとうございます!!

オプションをつけた上でコンパイルしうまく動きました。ありがとうございます。

これにてこの質問を終了します。

2006/04/26 23:54:42

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません