- 締切済み
apacheとphpの設定エラー
こんばんは。初めて質問させて頂きます。 類似の質問はいくつかあるのですが、私自身の融通が効かず調べてもどうにもならずに困っています。 PHPを勉強しようと思いまして、apache2.2.4とPHP4をインストールしました。http://w1.nirai.ne.jp/freeze/install2.htmlのサイトを見ながらhttpd.confの設定を変更しました。(このサイトは違うバージョンを使用しての設定のようなのですが、素人考えて同じような変更をしてしまいました)設定が終わったところでapacheを再起動したところエラーが出てしまいました。元に戻すとまたIT WORKS!と出てくるのですが。 エラーの内容は httpd exe:Syntax error on line 115 of c:/Apache2.2/cof/httpd.cof:Invalid LoadModule path c:/php/sapi/php4 apache2.2dll\x81@ です。 115行目は丁度書き換えたところなので、間違えているのは わかるのですが、何をどう直したらいいのかが分かりません。 しかも他の書き換えのところはエラーが出ないのでまた不思議なのですが。もしapacheを書き換える場合、PHP4の方はどこをどう書き換えたらいいのでしょうか。 VISTA使用です。 英語が苦手ということも重なってか余計にこんがらがっています。 ここで皆さんの質問回答や本などで大分理解は深めたつもりだったのですが・・・・ 大変初歩的な質問だと思います。申し訳ありませんが、お答え頂ければ有難いです。 また、いくつか本やサイトで調べたりはしているのですが、初心者にお勧めの本やサイトなどがあったら教えて頂ければ幸いです。 宜しくお願い致します。
- みんなの回答 (6)
- 専門家の回答
みんなの回答
- hiroto1212
- ベストアンサー率51% (23/45)
追記: 僕の場合(WinXP)ですが、httpd.confの設定例をあげておきます 以下の3行をhttpd.confに追加しただけです。あとはApacheを再起動すれば、この設定だけで最低限PHPは動きます。 LoadModule php5_module "C:/php/php5apache2_2.dll" AddType application/x-httpd-php .php PHPIniDir "C:/php"
- hiroto1212
- ベストアンサー率51% (23/45)
HTTP未検出はファイルがなくてアクセスできなかった際にApacheが出すメッセージです。 きっとURLで指定した場所にファイルがないのだと思います。 MEMOに「http://127.0.0.1/~/*.phpにアクセスして、、、」と書きましたが「~/*.php」の部分は「人それぞれ違うと思うので適宜変更してください。」という意味です 例えば、ドキュメントルート(トップページが入っているフォルダのことです)に <?php phpinfo(); ?> とだけ書いた test.php というファイルを置いたとすれば、しまいたけさんが動作確認のためにアクセスすべきURLは http://127.0.0.1/test.php です。 きっといろいろ読みすぎて頭がこんがらがっているんだと思います^ ^。 繰り返しになりますが、しまいたけさんが最低限、phpを動かすためにやる設定することは、 1.Apacheをインストール 2.phpを解凍 3.httpd.confに先に書いた3項目を 自分の環境に合わせて 追加。 これだけです。
- hiroto1212
- ベストアンサー率51% (23/45)
httpd exe:これは(php側のエラーではなく)httpd.exe(= apacheの本体)のエラーですよ~。 Syntax errorというのは構文エラーという意味(Syntax = 構文)。 of~ 親切にもApacheがどこから設定ファイルを読み込んでいるか表してくれています! Invalid LoadModuleというのはロードされているモジュールが無効ですよ(機能していませんよ)!という意味(Invalid = 無効な~。ちなみにvalidは有効なという意味です。) path~ そのモジュール(ライブラリとも言いますね。.dllという拡張子のファイルです)がある場所をApacheが親切にも示してくれています! これらのエラーメッセージはphpを書いてる時にもよく出てきますから単語の意味を覚えておいて損はないですよ^ ^(特に最初のうちはSyntax errorなんかがphpの命令の最後に ; とか付け忘れてうじゃうじゃでてきます) ちなみにLoadModuleで指定しているdllはわざわざsystem32の下になんかコピーする必要はありませんからね。httpd.confで指定した場所以外においても基本的に意味ありませんから。windowsが汚れるだけ。
お礼
お礼が遅くなり申し訳ありません。 ご回答有難うございます。 単語の意味も教えて頂き大変助かりました。 語句の勉強も必要性をヒシヒシと実感しています。 せめて英語が得意ならなんとなくでも意味がわかったかもしれないん ですが・・・ system32へのコピーもしないことにしました。 apacheは再起動してもエラーが出ないようになりました。 有難うございます。 また新たなトラブルが発生して頭を抱えてますが・・・ がんばってみます。 有難うございました。
- hiroto1212
- ベストアンサー率51% (23/45)
以下に僕のMEMOを張り付けておきます。 0.Apacheは最新安定版をexeファイルを使ってインストール。VISTAはprogram files以下にインストールするとファイルを追加するたびにセキュリティ警告が出るらしいのでC直下にインストする方がいいみたいです(パスでいえばC:\Apacheとか)。 1.PHPのバイナリファイル(.zipの)をダウンロード(こちらも最新安定版) 2.php.iniには基本的に手を付けなくてもよい。ただ、display_errorsはOnに、error_logには絶対パスでファイル名まで含めて指定した方がよい。 そうすればエラーが指定したところに出力される。 サーバーソフトの設定 ~Apacheの場合~ 1.以下3行をhttpd.confの自分がわかりやすいところに記入。phpのパックに含まれるphp5apache2_2.dllをLoadModuleで指定した場所に。 -------------- LoadModule php5_module "dllのあるディレクトリ/php5apache2_2.dll" AddType application/x-httpd-php .php PHPIniDir "ファイルディレクトリを指定(ファイル名までは指定しない)" ------------------- LoadModuleはphpをモジュールとしてApacheに登録。デフォルトの相対パスのトップはapacheをインストールしたフォルダ AddTypeはphpファイルをApacheに認識させるための命令 PHPIniDirはphp.iniのある場所。相対パス指定してもよい 動作確認 1.サーバーソフトを起動させた状態で、"<?php phpinfo(); ?>"とだけ記述したテキストファイルを、 拡張子を".php"に変えてサーバーソフトで設定してあるドキュメントルートに配置。http://127.0.0.1/~/*.phpに アクセスして、グラフィカルな表示がされれば動作している。"No input file specified."などというように 文字だけが表示されている場合は場合は正しく動作していない わからなければまた聞いてください^ ^v
お礼
お礼が遅くなり申し訳ありません。 ご回答有難うございました。 とても分かりやすいメモをつけて頂き有難うございます。 apacheはとりあえず再起動成功しました。有難うございます。 しかし、今、PHPを作動させてみたところ 今度はPHPの方がうまくいってないようで、HTTP未検出になって しまいました。 apacheにエラーは出てないのでPHPの方だと思うのですが・・・ PHPの方のエラーがどこかというのを調べる方法はあるのでしょうか。 いちいちつまづいてしまっていて、もっと初期の段階の勉強の必要を 実感しています。がんばってみます。 有難うございました。
- okg00
- ベストアンサー率39% (1322/3338)
>\x81 というのが全角空白をあらわしていますが、全角スペースがhttpd.confに入っていませんか? また、PHPのバージョンとApacheのバージョンの組み合わせに注意してください。 ※それ用にコンパイルされたものでないと同じバージョンでも通らない事がある。最近はあまりないけど 外部に公開するつもりが無い初心者の方でしたらXAMPPを使うのも手です。
お礼
お礼が遅くなってしまって申し訳ありません。 ご回答有難うございます。 XAMPPもトライしたのですが、なぜだかapacheだけ 拒否されてしまって・・・諦めて別々にやることにしたんです。。。 でもapache成功しました。有難うございました。
- hiroto1212
- ベストアンサー率51% (23/45)
ApacheとPHPの設定を解説するサイトは五万とありますが、どれも情報が古かったりいらないセキュリテイ設定を手順に追加していてましゃしく訳若僧です! せっかくなんだからPHP5をインストールしたらどうですか? 参照リンク(PHPの公式ページ的)に必要なことは書いてあります。 リンク先にも書いてありますが、セキュリティ的にもパフォーマンス的にもApache モジュールとしてインストールするのがオススメです。
お礼
お礼が遅くなりまして申し訳ありません。 ご回答有難うございます。 本当に色々なサイトや解説があって初心者にはどれを選んでいいの やら。。。。 PHP5をインストールすることにしました。 apacheも成功しました。 有難うございます。
お礼
こんばんは。こんな私に何度も回答有難うございます。 本当に助かりました。 無事、動きました! やっとスタート地点にたてました♪用語の意味も書いてあることも まだわからずまたこれからイチイチつまづくと思うのですが、勉強して一つづつクリアしていきます。 本当に本当に有難うございました。