Home > Internet > Web関連 > Apache2.2とPHP5.2:インストール

Apache2.2とPHP5.2:インストール

いやぁ~、はまった!はまった!

軽~ぅく考えてたんだけど、お約束通りどっぷりハマっちゃいました。

今回インストールしたのは、Apache2.2.3とPHP5.2の組み合わせ。
インストーラ自体は結構いい感じで、サクサクって終わるつもりだったのに、結局つまらない所で引っかかっちゃいました。

まずは、Windows用のバイナリーインストーラでApache2.2.3をインストール。結構構成が違うらしいと聞いていたんで、上書きせずにインストールしてみました。
Apacheの方はウスウスっとインストール終了。とりあえず、何にも考えずにlocalhostっと。
なんだぁ、ずいぶんシンプルじゃん!
「It works!」ってメッセージのみ。前のマルチランゲージで作られた、管理者うんぬんっていうメッセージじゃなくなりましたね。まぁ、どうせ消しちゃうファイルだから良いけどさ。

それでは、前のhttpd.conf見ながら、新しいhttpd.confを修正。

お~~っ、結構作りが変わってます。
一般的でない設定の類が、conf/extra以下の別ファイルになって、必要な時だけインクルードするようになってるみたい。

で、ここまでやってて気づきました。アプリケーション名が今までのApache.exeから、他のプラットフォームで一般的なhttpdに変更になってます。だから、この前書いたサービスのインストールは
httpd -k uninstall -n Apache2
になりました。ちなみに、Apache2.2のサービス名は「Apache2.2」です。

で、こっからがつまづきの連続。
PHP5.2のWindows用インストーラ。今まで最低限のファイルしか入れてくれなかったインストーラ版ですが、zipアーカイブ版より大きなファイルになってます。だから、Pear使いたい場合でもインストーラ版でだいじょぶ。(これは、いつから? もしかして5.0以降かな?)

インストールではWebServerの設定やPearのインストールも選択でき、前情報通りApacheにはApache2.2といのも選べるようになってます。

それで、インストーラ任せにしてみたら、なんかファイルのインストール自体は問題ないみたいだけど、インストーラが意味不明のエラーを表示してくれます。
「うまくいかなかったみたいなんで調べてね」みたいな、なんも参考にならないエラーメッセージです。

まず真っ先にhttpd.conf見たら、変わってないじゃん!という事でそれがエラーみたいですね。
で見たところ、php5ts.dllが移動した風もないし、結局マニュアルで設定しなきゃならないみたい。
それでも、今まではApache2.2用のDLLは、別なところで探してこなくちゃならなかったみたいなんで、ずいぶん楽かもしれないが。

ただ、PHPフォルダのinstall.txtの情報は、すごく解りずらい上にApache2.2の情報を追記として足してあるんで、Apache2と内容を読み分けるのに苦労した。

Apache用のDLL名はphp5_apache.dllや、php5_apache2.dllという風に、割と解りやすい名前になってるが、今回の2.2用はphp5_apache2_2.dllと、ちょっと苦し紛れ。まぁ、判別は付くんで良しとしときましょう。

でいつもの、
LoadModule php5_module "C:/usr/local/PHP/php5apache2_2.dll"
を書いてやる。

デフォルトのphp.iniのまま起動すると、取りあえずエラーなしで起動。
そこで、オモムロにphp.iniの編集を開始。
あぁ、やっぱりデフォルトのショートタグはオフじゃん、なんて思いながら編集しました。
どうやら、PHP5からMySQLのデフォルトサポートはなくなったみたいで、自分で読み込みを宣言しなくちゃいけなくなったみたい。
また、今までのPHPエクステンションの場所がextensionだったのに、extに変わったらしい。

だから内容的にPHP4のままのphp.iniだと、extensionがみつからないみたい。
こっからが、はまりまくり。extension_dirを正しく入力したとたん、ダイナミックリンクライブラリが見つからないとのエラーが出まくる出まくる。

DLLの場所がらみっぽいなと、色々情報を探したのでは、MySQLのライブラリ(libmysql.dll)がPHPフォルダとMySQL/binフォルダの2個所にあるのが原因ってのが見つかりました。
要は環境変数のパスを見て探してくんだけど・・・・ってやつ。取りあえず、双方から削除して、system32フォルダに移してみたが、なぜか解決せず。

そのうち、なんかメッセージに指定してないエクステンションが出てきてる気がしてきた。
もう一度、php.iniを確認してみると・・・・ナント紅鶴拳

最後の方にずら~っと、エクステンションのオンパレード。なんなんでしょこれ?
いつついたんだろう?
ここを削除したら簡単に起動しちゃいました。

あぁ~疲れた。でもちゃんとスクリプト動くのかなぁ?
とりあえずそのままで、表示できてるっぽいけド。

ping a Trackback

TrackBack URL for this entry.(1)

Comments:(2)

apro`s user-pic apro said February 13, 2007 6:35 PM | ReplyThis!

はじめまして。

はまってます、正に、今!tt そして検索しまくりinginging...いつになったら解決するのか、全く不明です。
mysqlどころか、それ以前の問題ですが・・・phpinfo() すら表示されないという。総当たりの ini と conf あぁ・・・目が痛いよぉtt

oscar`s user-pic oscar replied for apro's comment February 13, 2007 10:23 PM | ReplyThis!

どうも、はじめまして。
httpd.conf や php.ini を何度も書き換えた事があるなら、落ち着いてその2つをじっくり見れば、意外と落とし穴に気づきますよ。
実はその、落ち着いてってのが一番難しいんですけどね。

結構Apache2.0と2.2 PHP4.3と5.2 の違い(ディレクトリ名の違いとか、オプション設定の読み込み方の違いとか)でつまずいたのが、ほとんどでした。

スクリプトの読み込みが完了していません。

Sign in Sign in Sign in

メールフォーム(Javascriptを使用していません)や、twitter.pngTwitter経由のCommentでもReplyいたします。ただし返信はブログのコメントとして行う事もあります。

Comment Form

QuickTagsHere

EmoticonHere

(入力しない場合「Anonymous」で代替されます)
(公開はされませんが、Gravatarアイコンの取得や、Comment Subscribeの送信先アドレスとして使われます)
(入力すると、コメント表示でユーザー名にリンクが貼られます)
(この情報は、JavascriptによりCookieに保存されます。)

NotifyMail Powered by Comment Subscribe

はてブコメント:

Home > Internet > Web関連 > Apache2.2とPHP5.2:インストール

MT5Techniques

MT5Techniques

2冊目の共著「Movable Type 5 実践テクニック」(シックスアパート監修)が出版されました。(ソフトバンク クリエイティブ刊)

検索
(5)
(6)

別ページに遷移します。

Powered by Hyper Estraier

Feeds
Link Status
In One

なかのひと

位置情報ブログパーツ「なかのひと」

Links
Powered By

Return to page top