-PR-
解決済み

apacheが起動しない

  • 困ってます
  • 質問No.973701
  • 閲覧数1309
  • ありがとう数9
  • 気になる数0
  • 回答数5
  • コメント数0

お礼率 43% (211/486)

ご質問させて頂きます。

自分のPC(XP)からTelnetで
LINUX(Red Hat Linux release 9 (Shrike))に接続しています。
apacheをインストールをして、起動したいのですが
うまく行きません。

スタートをすると、
[root@localhost bin]# ./apachectl start
./apachectl start: httpd started

ストップをしてみると、
[root@localhost bin]# ./apachectl stop
./apachectl stop: httpd (no pid file) not running

リスタートをしてみると、
[root@localhost bin]# ./apachectl restart
./apachectl restart: httpd not running, trying to start
./apachectl restart: httpd started

設定ファイルを確かめてみると、
[root@localhost bin]# ./apachectl configtest
Syntax OK
と、出ます。

対処方法をご存じでしたら、よろしくお願いします。
通報する
  • 回答数5
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

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

  • 回答No.5
レベル14

ベストアンサー率 63% (1021/1612)

各種サービスを起動する・しない、は
ntsysv コマンド
chkconfig コマンド
を利用します。

ntsysv コマンドは、メニュー形式で初心者にわかりやすいのですが、
インストールされていないみたいですので、chkconfigコマンドを
使ってください。

ランレベル3・5 でパッケージ版のApacheが起動しないようにする。

# chkconfig --level 35 httpd off <ENTER>

詳しい使い方などはネット検索してください。
http://www.jp.redhat.com/manual/Doc72/RH-DOCS/rhl-cg-ja-7.2/chkconfig.html


>ところが以下を見る限り、ポート80は使われていないと思うのですが、
>apacheがどのポートで動いてるのかが分かりません。
>tcp 0 0 *:http *:* LISTEN

apacheのサービス名はhttpdなので、ちゃんと動いています。


apacheが、どのポートを見ているかは、httpd.confファイルに指定されています。

Listen 80
補足コメント
niiza

お礼率 43% (211/486)

こんにちは。
ご返事有り難うございました。

>chkconfig --level 35 httpd off
同じエラーが出てしまったので、
たぶんchkconfigもインストールされていないようです。

>apacheが、どのポートを見ているかは、httpd.confファイルに指定されています。
>Listen 80
Listenがコメント行になっていたので、コメント行を外して80にして再起動をしようとしたら、また動かなくなってしまいました。また、後日ご相談させて頂くかも知れませんが、その折りはよろしくお願いします。
投稿日時 - 2004-08-27 17:10:30

その他の回答 (全4件)

  • 回答No.1
レベル13

ベストアンサー率 47% (522/1092)

とりあえず、以下について教えてください。

1.apacheはどうやっていれましたか?
  rpmパッケージから?ソースから?

2.apachectl startしたときに本当に起動していますか?
  プロセスは立ち上がっていますか?

configtestは文法的なチェックしかしないので、
設定が矛盾していても文法があっていればとおります。
startしたときに起動していなければ、設定ファイル等なんらかにミスがあるかとおもいます。
その場合は、ログファイルに何らかの情報がでているとおもいますので、ログを参照してください
補足コメント
niiza

お礼率 43% (211/486)

こんにちは。
ご返事有り難うございました。

>1.apacheはどうやっていれましたか?
>  rpmパッケージから?ソースから?
ソースからインストールしました。

>2.apachectl startしたときに本当に起動していますか?
>  プロセスは立ち上がっていますか
以下のようにしたところ、
>[root@localhost bin]# ./apachectl start
>./apachectl start: httpd started
と、返ってくるだけなので起動していないと思うのですが・・・。

サンプルページも表示出来ません。
http://192.168.200.230/
「Not Found」と返ってきます。
ちなみにhttp://192.168.200.230:8080/
と、ポート番号を指定すると、
「HTTP Status 404 - /」
というエラーが出てします。

プロセスが立ち上がるという意味がちょっと分からないので
出来ましたら教えて頂きたいのですが・・・。

error_logを確認したところ
以下のメッセージが出てきました。
[Tue Aug 24 11:42:51 2004] [crit] (98)Address already in use: make_sock: could n
ot bind to port 80
[Tue Aug 24 11:58:18 2004] [crit] (98)Address already in use: make_sock: could n
ot bind to port 80
[Tue Aug 24 17:02:35 2004] [crit] (98)Address already in use: make_sock: could n
ot bind to port 80

ポート番号80は既に使われているということでしょうか?
今までapache・tomcatをインストールしても
なかなかうまくいかず
アンインストールしたり、インストールし直したりして
ごちゃごちゃになっているかも知れません。

大変にお手数をお掛けしますが、よろしくお願いします。
投稿日時 - 2004-08-24 17:07:02


  • 回答No.2
レベル7

ベストアンサー率 36% (7/19)

./apachectl start: httpd started となっているのであればApacheは起動
しているのではないでしょうか?
一度、LinuxマシンのWebブラウザから確かめてみてはどうでしょうか。

もしくは、RedHat9なら初めからApacheがインストールされている可能性
もあると思うので、RedHatの起動時に
Starting httpd [ OK ]
とでてくるか確認してみて下さい。
もしあれば、もとからインストールされているApacheが起動していますので、
こちらのApacheを停止(# /etc/rc.d/init.d/httpd stop)
した後に再度インストールしたApacheを起動(# usr/local/apache/bin/apachectl start)してみてください。
こうしないと、新しくインストールしたApacheを使えないかもしれません。
お礼コメント
niiza

お礼率 43% (211/486)

こんにちは。
ご返事有り難うございました。

>こちらのApacheを停止(# /etc/rc.d/init.d/httpd stop)
仰るとおりにしたところ、古いapacheが停止され、新しいapacheのサンプルページが見られるようになりました。有り難うございました。
投稿日時 - 2004-08-27 11:02:27
  • 回答No.3
レベル13

ベストアンサー率 47% (522/1092)

どうやらport 80は既に何者かが使っているようです。
#2様のご指摘のように既にパッケージもしくはこれまでに入れたapacheが起動しているかもしれません。

ソースからいれた場合、デフォルトの設定のままではListenPortは8080あたりだったようなきもしますが。

ローカルで使用する(勉強する)ためのサーバのようですね。
これを機に各コマンドを調べてみてはいかがでしょうか。

とりあえず、
#netstat -alt
と打ってみてください。
これで、ListenしているPortが分かるとおもいます。
(この場合、TCPのみですが)

そこで、wwwなどhttpd用のportがListenになっていれば何者かが使用しています

また、
#ps aux
と打ってみてください。
これで起動しているプロセスが表示されます。
簡単に言えば、起動しているサーバソフトが表示されます。

これらの結果、80番portをListenしているものがあったり、apache(httpd)が起動していたりしたら、既に起動していることになります。
補足コメント
niiza

お礼率 43% (211/486)

こんにちは。
ご返事有り難うございました。

ローカルで使用する(勉強する)ためのサーバのようですね。
>ハイ、仰るとおりです。

>[root@localhost bin]# netstat -alt
と、すると、以下のようになります。
ここで気になることがあるんですが・・・。
#2様のご指導して頂いたのでサンプルページを表示出来るようになりました。
ところが以下を見る限り、ポート80は使われていないと思うのですが、
apacheがどのポートで動いてるのかが分かりません。
それを調べる方法がありましたら
ご教授して頂けたら幸いです。

Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 *:1024 *:* LISTEN
tcp 0 0 localhost.localdom:1025 *:* LISTEN
tcp 0 0 *:printer *:* LISTEN
tcp 0 0 localhost.localdom:8005 *:* LISTEN
tcp 0 0 *:8009 *:* LISTEN
tcp 0 0 *:sunrpc *:* LISTEN
tcp 0 0 *:http *:* LISTEN
tcp 0 0 *:webcache *:* LISTEN
tcp 0 0 *:10000 *:* LISTEN
tcp 0 0 *:ftp *:* LISTEN
tcp 0 0 *:ssh *:* LISTEN
tcp 0 0 *:telnet *:* LISTEN
tcp 0 0 *:postgres *:* LISTEN
tcp 0 0 localhost.localdom:smtp *:* LISTEN
tcp 0 138 192.168.200.230:telnet 192.168.200.:supfiledbg ESTABLISHED


[root@localhost bin]# ps aux
と、すると、以下のようになりました。
これはapacheが動いていると考えて宜しいんですよね?

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND



root 13220 0.0 0.2 2644 272 ? S 09:37 0:00 /soft/apache/bin/
nobody 13221 0.0 0.1 3060 232 ? S 09:37 0:00 /soft/apache/bin/
nobody 13222 0.0 0.9 3060 1176 ? S 09:37 0:00 /soft/apache/bin/
nobody 13223 0.0 0.9 3060 1208 ? S 09:37 0:00 /soft/apache/bin/
nobody 13224 0.0 0.1 2800 252 ? S 09:37 0:00 /soft/apache/bin/
nobody 13225 0.0 0.1 2800 252 ? S 09:37 0:00 /soft/apache/bin/
root 13432 0.0 0.5 2688 752 pts/1 R 11:22 0:00 ps aux

よろしくお願いします。
投稿日時 - 2004-08-27 11:31:32
  • 回答No.4
レベル14

ベストアンサー率 63% (1021/1612)

>>1.apacheはどうやっていれましたか?
>>  rpmパッケージから?ソースから?
>ソースからインストールしました。

パッケージ版のapacheとソース版のapacheが混在していて、先にパッケージ版が
動いているのでしょう。

パッケージ版のapacheがインストールされているかrpmコマンドで確認してください。

# rpm -qa | grep httpd <ENTER>
httpd-2.0.40-21.11

インストールされていたら、デフォルトでは起動するようになっていますので、
RedHat起動時にパッケージ版apacheが動かないようにしてください。

# ntsysv --level 35 <ENTER>

「httpd」のチェックをはずして再起動。

この後は、ソース版のapacheを起動させてください。

# /usr/local/apache2/bin/apachectl start <ENTER>

上記のコマンドを、/etc/rc.d/rc.localファイルに記述しておくと、
RedHat起動時に、ソース版のapacheが動きます。
補足コメント
niiza

お礼率 43% (211/486)

こんにちは。
ご返事有り難うございました。
サンプルページを表示出来るようになってから
以下のコマンドをしました。

# rpm -qa | grep httpd
httpd-manual-2.0.40-21
redhat-config-httpd-1.0.1-18
httpd-2.0.40-21

続いて、
# ntsysv --level 35 <ENTER>
と、したんですが、
bash: ntsysv: command not found
と、なってしまいます。
たぶん私のやり方がおかしいと思うのですが
どこがおかしいのかご指摘して頂ければと思います。

もう一つ伺いたいのですが・・・。
>「httpd」のチェックをはずして再起動。
こちらの方法がちょっと分かりません。

サンプルページを表示出来るようになったので
一応問題は解決したのですが
これからのためにご教授して頂けたら幸いです。
投稿日時 - 2004-08-27 11:55:02
このQ&Aで解決しましたか?
このQ&Aにこう思った!同じようなことあった!感想や体験を書こう
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-

特集


開業・独立という夢を持つ人へ向けた情報満載!

ピックアップ

-PR-
ページ先頭へ