• ベストアンサー

apache2.0.54設定方法

自分のパソコン(WindowsXP)にapache2.0.54と言うソフトをインストールして、wwwサーバ(アップロードする為のテスト用)を作ることにしました。しかし、色々な参考サイトを見ながらhttpd.cofを書き換えても下記のエラーが出ます。 「通常、各ソケット アドレスに対してプロトコル、ネットワーク アドレス、またはポートのどれか1つのみを使用できます。 :make_sock: could not bind to address 0.0.0.0 :80 no listening sockets available, shutting down Unable to open logs Note the errors or messages above, and press the <ESC> key to exit.」 お詳しい方、ご教示願います。

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

  • ベストアンサー
  • Lean
  • ベストアンサー率72% (435/603)
回答No.6

一つ確認ですが、Apacheをインストールした後、どういった事を行ったら質問にあるエラーになりましたか? 以下、推測です。 >Local Addressでポート80を指定しているのは、apacheだけのようです。 既にApacheが起動されているようですね。 もしかして、httpd.confを書き換えてから、スタート→プログラム→Apache HTTP Server 2.0.54→Control Apache Server→StartでApacheを起動させようとしていませんか? Win32版Apacheですが(WindowsXPで)インストールを行うとサービスとして登録され自動的に起動されます。 そこで、Apacheの停止を行わず上記のようにメニューから起動を行うと二重起動となり質問にあるエラーとなりますので、httpd.confを書き換えてそれを反映させたい場合はApacheを停止→起動か、再起動させてください。 また、タスクバーにApache Service Monitor(メニューからでも起動可)があるので、そこからApacheの起動/停止/再起動を行う事が出来ます(もちろんメニューからでもいいです)

truth0088
質問者

お礼

スタート→プログラム→Apache HTTP Server 2.0.54→Control Apache Server→Startと起動していました。 Lean様のおっしゃる通り、既に起動されているのに気付かず二重起動していたようです。 適切な回答本当にありがとうございました。 次に質問する際は、もっと分かりやすく書くよう努力します。

その他の回答 (5)

noname#10575
noname#10575
回答No.5

WindowXP の SP2であれば、自分自身のPCへのTCP接続が遮断される設定が、デフォルトとなっている可能性があります。 次のURLに、XPのICF(Internet Connection Firewall)の設定方法が載っているので、試してみるといいかもしれません。TCP 80番がなかったら、追加してください。 http://pcweb.mycom.co.jp/special/2004/winxpsp2/002.html

truth0088
質問者

お礼

参考URL拝見しました。 こんな事があるとは、パソコンを使ってますが、 あまりの自分の無知さに恥ずかしさを感じてます。 Resありがとうございました。

noname#10575
noname#10575
回答No.4

私のレスで混乱させてしまい、ごめんなさい。 嘘を教えてしまったかもしれません。 おそらくNo3さんの言うとおりでしょう。 参考URLのような情報がありました。

参考URL:
http://66.102.7.104/search?q=cache:ZCYKq8uuB7YJ:www.atmarkit.co.jp/bbs/phpBB/viewtopic.php%3Ftopic%3D20496%26forum%3D12%
truth0088
質問者

お礼

Resありがとうございます。 参考URL拝見しました。 私の知識が無さ過ぎて、ポート80が他で使われているのかさえも分かりません。 ただ、他のサーバソフトは、入ってないと思います。 何かお気付きの事がありましたらご教示ください。 よろしくお願いします。

  • Lean
  • ベストアンサー率72% (435/603)
回答No.3

1つのポートを使用出来るプログラム(ソフト)は同時に1つだけです。 つまり、既に80番ポート(通常HTTPで使用)を使用しているプログラムが存在しているためにApacheが起動出来ない状態です。 ですから、既に80番ポートを使用しているプログラムを停止させる、もしくは、Apacheで使用するポートを80番以外の使用されていないポートに変更しないとApacheを起動させる事は出来ません。 もしかしたら、IISとか動いていませんか? コマンドプロンプトからnetstatを実行すると既に80番ポートが使用されているか確認する事が出来ます(netstat -nを実行してLocal Addressの所で「IPアドレス:80」があれば80番ポートを使用しているプログラムが既に存在する) また、下記URLのページにあるtcpviewを使用すると80番ポートを使用しているプログラムを特定出来ます。 http://www.sysinternals.com/ntw2k/source/tcpview.shtml

参考URL:
http://www.sysinternals.com/ntw2k/source/tcpview.shtml
truth0088
質問者

お礼

Resありがとうございます。 早速、下記URLにある「TPCビュー」を使用しました。 Local Addressでポート80を指定しているのは、apacheだけのようです。 しかし、Remote Addressでは、IEの起動と閉じる時にポートに80と出ます。 ちなみにIEのLocal Addressは、127.0.0.1:1044(1044など)です。 すみません、私は、素人で対策方法が全く分かりません。詳しい方、どうかご教示願います。

noname#10575
noname#10575
回答No.2

127.0.0.1はループバックアドレスといって、主にテスト用に使用されるIPです。 ですので、そのPCにアサインされているIPアドレスを指定してみてください。DHCPで自動取得しているのであれば、PC起動後、DOSプロンプトを開いて、「ipconfig」とコマンドをうってください。その時に表示される「IPアドレス」がそうです。 ですが、DHCPだと、PC再起動毎に、IPが変わる恐れがありますので、その都度、httpd.confの設定を変更する必要がでてきます。その辺を考慮すると、そのPCだけはスタティックなIPをアサインした方がよいでしょう。いますぐにでもと言うわけではありませんが、暇な時にでも、考えてみてください。

noname#10575
noname#10575
回答No.1

1行目の「address 0.0.0.0」が怪しいですね。 httpd.conf内の、「ServerName」に適切なホスト名が設定されていないか、「ServerName」に設定されているホスト名が/etc/hostsに設定されているか、確認してみてください。

truth0088
質問者

お礼

早速のResありがとうございます。 Server Nameは、127.0.0.1 :80 にしています。 これは、自身のパソコンを意味すると説明がありました。 あぁ、どうすればいいのでしょうか...