|
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.7">第 48 章 インストールこのセクションではPHPのインストール方法に関する一般的な質問扱います。 PHPは(OSX以前のMacOSを除けば)ほとんど全てのOSと、ウェブサーバで利用 可能です。 PHPをインストールには、ディストリビューションに含まれるINSTALLファイルの説明に従っ てください。ウィンドウズユーザの場合は加えてinstall.txtファイルも読む必要 があります。またウィンドウズユーザのための役立つヒントがここにあります。
UNIXの場合、デフォルトでは/usr/local/lib です。コンパイル時に --with-config-file-path オプションを使用してこの場所を変えたいという人も多いでしょう。 例えばこのようにすることも出来ます:
ウィンドウズの場合、php.iniのデフォルトパスはWindowsディレクトリになります。 Apacheウェブサーバを使っている場合はまずApacheがインストールされているディレクトリ (例えばc:\program files\apache group\apacheにある php.iniを探そうとします。このため、異なるphp.iniファイルを異なるバージョンの Apacheごとに置いておくことができます。 設定ファイルの章も参照してください。 2. Unix: PHPをインストールしましたが、ファイルをロードするたびに 'Document Contains No Data(ページが表示できません)'というメッ セージが表示されます。何が起こっているのですか? これはおそらくPHPに何らかの問題が起こっていてコアダンプしている という状態です。サーバのエラーログを見てこのケースかどうかチェッ クしてください。そして小さなテストケースで問題を再現させてみてく ださい。もし'gdb'の使い方が分かるならバグレポートに加えてバック トレースを提供してもらえると開発者が問題の箇所を突き止めるのに非 常に役立ちます。もしあなたがPHPをApacheモジュールとして使用して いる場合は以下のようにします:
もしそのスクリプトが正規表現関数を使用している場合 (ereg()やその類似関数)、PHPとApacheが同じ正規表現の パッケージを使用してコンパイルされているかどうかを確認してください。 PHPとApache 1.3.xを使用している場合は常に確認が必要です。 あなたがApacheとPHPの両方をRPMでインストールしたとすると、いかに示す 内容の一部もしくは全てをhttpd.confファイルに追加 するか、コメントを外す必要があります:
PHP 3のビルド方法の制約により、どの環境にも対応できる柔軟なPHPの RPMを作成するのは困難です。この問題に関してはPHP 4で取り組んでい ます。PHP 3ではとりあえずPHPディストリビューションの INSTALL.REDHATファイルで説明されている方法を用いることをお勧めし ます。もしどうしてもRPMバージョンのPHP 3を使う、という場合は続き をお読みください。 RPMのパッケージャはインストール処理を単純化するため、 そして標準の/usr/local/ディレクトリではなく/usr/を使 用するためにデータベースサポート無しのRPMを作成しています。デー タベースサポートを追加するにはRPM specファイルにサポートするデー タベースの種類と最上位ディレクトリを指定する必要があります。 以下の例は広く使われているMySQLデータベースサポートを追加して Apacheモジュールをインストールする場合について説明しています。 もちろん以下の全ての情報はPHPがサポートするいずれのデータベース の場合でも対象箇所を適宜変更すれば対応可能です。この場合はMySQL とApache共にRPMのみを使ってインストールしたものと仮定しています。
5. Unix: ApacheにFrontPageエクステンションのパッチを当てたら、突然 PHPが動作しなくなってしまいました。PHPはApacheのFrontPageエクス テンションと共存することはできないのですか? いいえ。PHPはFrontPageエクステンションと問題なく共存できます。問 題はFrontPageエクステンションのパッチがPHPが依存しているApacheの 構造の一部を変更してしまうことにあります。パッチを当てた後でPHP を再コンパイル('make clean; make'として下さい)すれば問題は解決さ れます。 ブラウザの「ソースの表示」を実行してください。おそらくPHPのソー スコードが表示されると思います。これはウェブサーバがスクリプトを PHPに渡していないためスクリプトが実行されていない、ということを 意味します。サーバ側の設定のどこかが間違っているはずですので、 PHPインストールマニュアルに従って再度入念に設定を確認してみてく ださい。 ウェブサーバがPHPを実行するときに何らかの問題が起きています。ど んなエラーが起こっているか確認するために、コマンドラインでPHP実 行ファイル(Windowsではphp.exe)のあるディレ クトリに移動してphp -iを実行して下さい。もし PHPの実行時に問題があった場合は適切なエラーメッセージが表示され るのでそれを手がかりに次に何をすべきかを知ることができます。画面 一杯にHTML(phpinfo()関数の出力)が表示された場 合にはPHPは問題なく動作していますので、問題はウェブサーバの設定 にあるはずです。再度入念にチェックしてみて下さい。 8. PHPをインストールするまではエラーもなく問題なく進んだのですが、 apacheを起動させようとするとundefined symbolエラーが発生します:
これは、PHPとは関係なくMySQLクライアントライブラリの問題です。 このライブラリのうちある種のものは --with-zlib を必要とし、 他のものは必要としません。こ問題はMySQL FAQでも扱われています。 9. Windows: PHPをインストールしたのですがブラウザからPHPスクリプト にアクセスすると次のようなエラーが出力されます:
このエラーメッセージはPHPが(何らかの理由で)何も出力できなかった ことを意味します。詳細なエラーメッセージを得るためにはコマンドラ インから、PHP実行ファイル(Windowsでは php.exe)のあるディレクトリに移動して php -iを実行して下さい。もしPHPの実行時に問題 があった場合は適切なエラーメッセージが表示されるのでそれを手がか りに次に何をすべきかを知ることができます。画面一杯に HTML(phpinfo()関数の出力)が表示された場合には PHPは問題なく動作しています。 PHPがコマンドラインで動作したなら、再度ブラウザからPHPスクリプト にアクセスしてみて下さい。もしまだ失敗するようなら以下のいずれか の理由によるものと思われます。
|