• ベストアンサー

apacheが起動しない。(FreeBSD7.1 apache2.2.9)

 初心者です。FreeBSD7.1にapache2.2.9をportsからインストールしましたが起動しません。 ww#apachectl start をしても何もエラーメッセージは出ていないのですが、 ww#netstat -a の結果は Active Internet connections (including servers) Proto Recv-Q Send-Q Local Address Foreign Address (state) tcp4 0 0 192.168.0.2.ssh 192.168.0.7.2057 ESTABLISHED tcp4 0 0 *.telnet *.* LISTEN tcp4 0 0 localhost.smtp *.* LISTEN tcp4 0 0 *.ssh *.* LISTEN tcp6 0 0 *.ssh *.* LISTEN udp4 0 0 *.syslog *.* udp6 0 0 *.syslog *.* という内容で、80番がありません。 ww#ps -ax | grep apache とやっても何も返ってきません。 ww#apachectl configtest とすると Syntax OK と返ってきます。 対処法を教えて頂けないでしょうか。宜しくお願いします。

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

  • ベストアンサー
  • OKwebb
  • ベストアンサー率44% (92/208)
回答No.2

> ww#ps -ax | grep apache psで確認するのは、apacheでなくhttpdの方がいいかもしれません。 (apacheアカウントで起動するように設定してれば、apacheでもいいですけど) > error_logの場所が分かりません。 httpd.confの中のErrorLogディレクティブにてエラーログの出力先を設定してます。 /var/log/httpd/error_log とか。 > erroディレクトリがありましたがこの内のどれかでしょうか? これはapacheでエラーが発生した場合に表示するファイルですね。

shin076
質問者

お礼

ご回答ありがとうございます。 ww#ps -ax | grep httpd をやっても何も引っ掛かりませんでした。 それでお教え頂きましたようにerro_logを調べたところ以下のような記述がありました。 [Mon Apr 06 19:02:55 2009] [warn] Init: Session Cache is not configured [hint: SSLSessionCache] [Mon Apr 06 19:02:55 2009] [alert] (EAI 8)hostname nor servname provided, or not known: mod_unique_id: unable to find IPv4 address of "www.○○○.○○○.jp" Configuration Failed 二つ目はhttpd.confのServerNameが間違っているって事ですよね。ですからダイナミックDNSに登録した通りに変更しました。"WWW"が余計でした。ServerName ○○○.○○○.jp:80 更にhostsファイルと一致しないって事だと思い、hostsファイルも変更し、年のためにrebootしてから再度 ww#apachectl start をしました。そのerror_logが以下の通りです。 [Mon Apr 06 19:28:25 2009] [warn] Init: Session Cache is not configured [hint: SSLSessionCache] [Mon Apr 06 19:28:26 2009] [alert] (EAI 8)hostname nor servname provided, or not known: mod_unique_id: unable to find IPv4 address of "www.○○○.○○○.jp" Configuration Failed また同じerrorメッセージが出てきました。削除したはずのwwwも残っています。ちなみにマシンのホスト名はWWWです。c

shin076
質問者

補足

色々やってみたところ、やっとブラウザにてアクセスできました。 (1)http.confで以下のモジュールをコメントアウトしました。 ※ちなみにデフォルトで全てのモジュールが生きているんですけど、そういうものなんですか? #LoadModule ssl_module libexec/apache22/mod_ssl.so (2)hostsファイルの再修正 下記方法で確認 (1)ww# ps -ax | grep httpd 1131 ?? Ss 0:00.13 /usr/local/sbin/httpd -k start 1132 ?? I 0:00.03 /usr/local/sbin/httpd -k start 1133 ?? I 0:00.02 /usr/local/sbin/httpd -k start 1134 ?? I 0:00.02 /usr/local/sbin/httpd -k start 1135 ?? I 0:00.01 /usr/local/sbin/httpd -k start 1136 ?? I 0:00.03 /usr/local/sbin/httpd -k start 1138 ?? I 0:00.01 /usr/local/sbin/httpd -k start 1050 p2 T 0:00.62 vi /var/log/httpd-error.log 1106 p2 T 0:00.58 vi /var/log/httpd-error.log 1161 p2 R+ 0:00.01 grep httpd (2)ww# netstat -a tcp4 0 0 192.168.0.2.ssh 192.168.0.3.2416 ESTABLISHED tcp4 0 0 192.168.0.2.http *.* LISTEN tcp4 0 0 localhost.telnet localhost.62750 ESTABLISHED tcp4 0 0 localhost.62750 localhost.telnet ESTABLISHED tcp4 0 1516 192.168.0.2.ssh 192.168.0.3.1322 ESTABLISHED tcp4 0 0 192.168.0.2.ssh 192.168.0.3.3751 ESTABLISHED tcp4 0 0 *.telnet *.* LISTEN tcp4 0 0 localhost.smtp *.* LISTEN tcp4 0 0 *.ssh *.* LISTEN tcp6 0 0 *.ssh *.* LISTEN udp4 0 0 *.syslog *.* udp6 0 0 *.syslog *.* (3)WindowsXPからブラウザでアクセス http://192.168.0.2 しかしerror_logには新たなerrorが表示されています。これはどのようなことでしょう? [Mon Apr 06 21:37:45 2009] [notice] Digest: generating secret for digest authentication ... [Mon Apr 06 21:37:45 2009] [notice] Digest: done [Mon Apr 06 21:37:46 2009] [notice] Apache/2.2.9 (FreeBSD) DAV/2 configured -- resuming normal operations

その他の回答 (2)

  • OKwebb
  • ベストアンサー率44% (92/208)
回答No.3

とりあえず、アクセスできたようでよかったですね。 #2補足です。 > ※ちなみにデフォルトで全てのモジュールが生きているんですけど、そういうものなんですか? ディストリビューション毎に微妙に違うのでなんともいえません。 > #LoadModule ssl_module libexec/apache22/mod_ssl.so httpsアクセスが不要でしたらコメントアウトして問題ありません。 > しかしerror_logには新たなerrorが表示されています。これはどのようなことでしょう? > [Mon Apr 06 21:37:45 2009] [notice] Digest: generating secret for digest authentication ... > [Mon Apr 06 21:37:45 2009] [notice] Digest: done > [Mon Apr 06 21:37:46 2009] [notice] Apache/2.2.9 (FreeBSD) DAV/2 configured -- resuming normal operations ログレベルが[notice][info][debug]は基本エラーではありません。 ちなみに[notice] Digest:~はmod_auth_digest.soを組み込んでると出力されます。 [notice] Apache/2.2.9~は起動時に出力されます。

shin076
質問者

お礼

ありがとうございます。助かりました。 httpsにつきましては、追々やっていきます。私の知識ではhttpsが必要になることはまだありませんから。とりあえずWebサーバとWebDAVができればOKです。これから行き詰ったら、まずerrorログをチェックするようにします。

  • 774danger
  • ベストアンサー率53% (1010/1877)
回答No.1

とりあえず、 telnet localhost 80 を実行して何か応答がありますか? % telnet localhost 80 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. のような応答があればhttpdが動いています 起動しないのであればerror_logに何かしらメッセージが出ているはずです あと、うちの環境はFreeBSD6.3+自分でmakeしたapacheなので外しているかもしれませんが、 nobody 22433 0.0 4.3 29740 21952 ?? I 22Oct08 268:39.25 /usr/local/ap nobody 22434 0.0 4.9 32080 24744 ?? I 22Oct08 270:46.95 /usr/local/ap nobody 22436 0.0 5.1 33316 25812 ?? I 22Oct08 266:40.56 /usr/local/ap nobody 22438 0.0 3.4 24936 17436 ?? I 22Oct08 266:17.88 /usr/local/ap nobody 22439 0.0 8.0 48096 40696 ?? I 22Oct08 263:58.45 /usr/local/ap nobody 22440 0.0 4.4 29952 22300 ?? I 22Oct08 262:32.91 /usr/local/ap psしてもhttpdのパスが途中で切れるのでapacheでgrepしても引っかかりません

shin076
質問者

お礼

ご回答ありがとうございます。 telnetでlocalhostの80番にアクセスしたところ、下記のような応答がありました。どうもダメみたいです。WindowsXPからhttp://192.168.0.2にアクセスしたところ、それもダメでした。 ww# telnet localhost 80 Trying 127.0.0.1... telnet: connect to address 127.0.0.1: Connection refused Trying ::1... telnet: connect to address ::1: Connection refused telnet: Unable to connect to remote host それでerror_logを調べてみようと思ったのですが、error_logの場所が分かりません。すいません。apache22にerroディレクトリがありましたがこの内のどれかでしょうか? ww# pwd /usr/local/www/apache22/error ww# ls HTTP_BAD_GATEWAY.html.var HTTP_REQUEST_ENTITY_TOO_LARGE.html.var HTTP_BAD_REQUEST.html.var HTTP_REQUEST_TIME_OUT.html.var HTTP_FORBIDDEN.html.var HTTP_REQUEST_URI_TOO_LARGE.html.var HTTP_GONE.html.var HTTP_SERVICE_UNAVAILABLE.html.var HTTP_INTERNAL_SERVER_ERROR.html.var HTTP_UNAUTHORIZED.html.var HTTP_LENGTH_REQUIRED.html.var HTTP_UNSUPPORTED_MEDIA_TYPE.html.var HTTP_METHOD_NOT_ALLOWED.html.var HTTP_VARIANT_ALSO_VARIES.html.var HTTP_NOT_FOUND.html.var README HTTP_NOT_IMPLEMENTED.html.var contact.html.var HTTP_PRECONDITION_FAILED.html.var include