こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

【初歩】Win98+Apache2+PHP4のセットアップでつまづきました…

コンピュータ名:srvnameという、Windows98機に、Apache 2.2.4とPHP4.4.7を入れたのですが動作しません。
業者が開発したWebシステム環境をローカルに再現しようとしています。後々、PEARやMySQLも使用しますが、私自身、エンドユーザーなのでこういうことは詳しくないです。

◆◆◆ 問題点は下記の2件です。◆◆◆
http://localhost/http://srvname/ にアクセスしても「It works!」が出ません。
・<?php phpinfo(); ?>にアクセスしても、生ソースが表示されてしまいます。

◆◆◆やった手順は下記の通りです。◆◆◆

(1) Apaecheを推奨のままインストール。サーバーからhttp://localhost/とやったり別PCからhttp:srvname/にアクセスしたら「It works!」が出た。
(2) 下記を参考に、PHPをセットアップ。
http://allabout.co.jp/internet/database/closeup/CU20031114/index.htm

●php4ts.dllをC:\WINDOWにコピー
●php.ini-distをコピーし、php.iniとリネームしてC:\WINDOWS内にコピーし内容修正
・include_path = ".;c:\php\includes;c:\php\pear"
・doc_root = "C:\Program Files\Apache Software Foundation\Apache2.2\htdocs"
・extension_dir = "c:\php\extensions"
●c:\php\dllsの全DLLをC:\WINDOWS\SYSTEM内にコピー
●httpd.conf を修正
・LoadModule php4_module c:/php/sapi/php4apache.dll
・AddModule mod_php4.c を追加したかったですが、httpd.conf内にこういう項目ありません
・AddType application/x-httpd-php .php
・AddType application/x-httpd-php-source .phps
●ApacheをRestartしてうまくいかないので、Windows98も再起動。
・サーバー機で下記にアクセス。
http://localhost/ ==>ページを表示できません。
http://localhost/test.php ==>ページを表示できません。(中はphpinfoです)
・別PCから下記にアクセス
http://srvname/ ==>It works!と出て成功。
http://srvname/test.php ==>ページを表示できません。(中はphpinfoです)


ところで、Apache2だと、あなたの予想に反して・・・というユーモアな文言はなくなったのですか?

投稿日時 - 2007-07-23 17:46:22

QNo.3192818

暇なときに回答ください

質問者が選んだベストアンサー

まず Apache2.2/logs/ 内のエラーログや、Windowsのイベントビューアで
エラーの内容を確認してください。

初期設定で起こりそうな問題は

・httpd.confでアクセスを拒否されている
<Directory />
# Deny from all # とりあえずコメントアウト
</Directory>

・dllが対応していない(PHPサイトのは非対応)php4apache2.dll-php4.4.x.zip
http://www.apachelounge.com/download/

LoadModule php4_module "c:/php/sapi/php4apache2.dll"

予想に反してはなくなってしまいましたね。

投稿日時 - 2007-07-23 19:14:02

お礼

ご回答ありがとうございました。

環境があるのが会社なので、コメントアウトと
php4apache2.dllの入れ替えの方は明日ためさせていただきます。

それにしても、すごい情報をお持ちですね。
もしDLLの方で解決したと仮定すると、私では一生解決できなかったですね。

>予想に反してはなくなってしまいましたね。

やっぱりそうでしたか。味わい深かったのですが。

投稿日時 - 2007-07-23 23:49:17

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(4)

ANo.4

まさかWin98で外向けのhttpdを立てようという無謀なことはおもっていない
とおもいますのであくまでもテスト環境ですよね?
win98ならapacheよりan httpdなどさらっと設定できるものの方が
らくだとおもいますよ。(実環境とはどうせ異なることでしょうから)

投稿日時 - 2007-07-23 22:06:11

お礼

代替案のご提示ありがとうございました。

サーバーの後悔はLAN内のみで、特定少数がたまにアクセスする程度の
ものです。なので、余っている古いノートをサーバーにしてしまおう
という話です。

an httpdもいいらしいですが、今までIISばかりで
せっかくの機会なのでApacheを触ってみたいと思いました。

投稿日時 - 2007-07-23 23:52:05

ANo.2

多分 phpが起動できてない(エラーログを確認)
その場合は phpの設定(php.ini)がインストーラによって多重になるのが原因だったと思う。

投稿日時 - 2007-07-23 18:03:49

お礼

ご回答ありがとうございました。
「インストーラによって多重になるのが原因」というのは
Apacheのインストーラのことでしょうか?

Apache2は、MSIを用い、Win98なのでインストーラは、
http://support.microsoft.com/kb/292539/ja
ここを参考にWin98用のWindows インストーラ 2.0を
セットアップしました。

投稿日時 - 2007-07-23 23:45:17

ANo.1

access.logやerror.logを見て原因を調べましょう。

必ずヒントが書かれています。

投稿日時 - 2007-07-23 17:50:02

補足

すみません、御礼に記したlogは、最新でないかもしれません。

会社からかえる前にC:\Program Files\Apache Software Foundation
以下を圧縮して(サーバーでなく)メイン機にコピーし
今いる自宅に持ち帰っているものです。

いずれにせよ、ログの読み方等を含め、明日再チェックしてみます。
不確かな情報を示してすみませんでした。

投稿日時 - 2007-07-24 00:06:00

お礼

早速ご回答ありがとうございました。
ご指摘のlogファイルは下記のようになっていました。

◆ access.log
192.168.1.49 - - [23/Jul/2007:16:28:00 +0900] "GET / HTTP/1.1" 200 44
127.0.0.1 - - [23/Jul/2007:16:28:12 +0900] "GET / HTTP/1.1" 200 44
127.0.0.1 - - [23/Jul/2007:16:58:23 +0900] "GET / HTTP/1.1" 304 -
127.0.0.1 - - [23/Jul/2007:16:58:28 +0900] "GET /test.php HTTP/1.1" 200 15
127.0.0.1 - - [23/Jul/2007:16:59:25 +0900] "GET /test.php HTTP/1.1" 200 15
127.0.0.1 - - [23/Jul/2007:16:59:26 +0900] "GET /test.php HTTP/1.1" 304 -
127.0.0.1 - - [23/Jul/2007:17:00:17 +0900] "GET /test.php HTTP/1.1" 200 19
127.0.0.1 - - [23/Jul/2007:17:00:18 +0900] "GET /test.php HTTP/1.1" 304 -
127.0.0.1 - - [23/Jul/2007:17:02:31 +0900] "GET /test.php HTTP/1.1" 304 -


◆ error.log: 以下、[Mon Jul 23 16:27:20 2007] [notice] は省略します。新しい14件のみ。
Apache/2.2.4 (Win32) configured -- resuming normal operations
Server built: Jan 9 2007 23:17:20
Parent: Created child process -4140371
Child -4140371: Child process is running
Child -4140371: Acquired the start mutex.
Child -4140371: Starting 250 worker threads.
Child -4140371: Listening on port 80.
Parent: Received shutdown signal -- Shutting down the server.
Child -4140371: Exit event signaled. Child process is ending.
Child -4140371: Released the start mutex
Child -4140371: Waiting for 250 worker threads to exit.
Child -4140371: All worker threads have exited.
Child -4140371: Child process is exiting
Parent: Child process exited successfully.

投稿日時 - 2007-07-23 23:39:52