XAMPP環境でlocalhostに接続できない意外な原因

久しぶりにXAMPPで開発を行おうとしたら、localhostにつながらなくなってしまいました。

疑う先はいっぱいあるのですが・・・

Windowsにはいろいろ手を入れているので、疑う先はいっぱいあります。

  • ファイヤウォールがポートをふさいでいる
  • hostsファイルが書き換えられている
  • Apacheの設定が間違っている
  • 他のアプリがポートを使っている

まずは、ファイヤウォール。
ポート80がふさがれていないか確認します。
ルーターの設定は問題なし。
コンピュータのファイヤウォールも問題なし。
以前つながっていたし、設定を変えた覚えもないので、当然です。

次に、念のため、hostsファイルを調べました。
XAMPPでバーチャルドメインを有効にするためにhostsファイルに記述を付け足すわけですが、その時にうっかり間違えて、localhostを無効にしているのかな? と思ったのですが、こちらも問題なし。

次は、Apacheの設定ファイル。
こちらも、初期設定から触った記憶があるのはバーチャルドメインのあたりだけですが、いちおう念のために一通り調べてみました。
結果、問題なし。

となると、他のアプリが悪さをしているということになります。

「そうか! Skypeのバージョンアップのせいだな! そうに違いない!」と思って設定を見てみたところ・・・きちんとポートが変えてありました。
「上記のポートに代わり、ポート80を使用」のチェックが外れていて、全く違うポートが使われています。

コマンドプロンプトを使うしかないか・・・

仕方がないので、地道に使われているポートを調べます。
スタートメニューのアクセサリからコマンドプロンプトを開いて、netstat -ano を実行。
うあ、すごい情報量です。
バッファの容量を超えてしまって、先頭のほうが切れてしまっています。
これでは肝心のポート80あたりが見れません。

cmd20110620-1.jpg

コマンドプロンプトの設定を変更します。
ウィンドウ上で右クリックしてプロパティを開き、レイアウトタブから、画面バッファーのサイズを変更します。
とりあえず、高さを800にしてみました。


再度、netstat -ano を実行します。
またもや大量の情報が表示されますが、スクロールバーで戻れば、ポート80を使用しているプロセスが確認できます。

cmd20110620-2.jpg

どうやら、PID = 4772 のプロセスが邪魔をしているようです。

プロセスの名前を調べるために、tasklistコマンドを使います。

tasklist /svc /fi "PID eq 4772"

cmd20110620-3.jpg

見つかりました。GladinetClient.exe です。
これは、クラウドのストレージをハードディスクのようにマウントするツールです。
Microsoft Sky Drive なんかをマウントして便利に使っていたのですが、こいつのせいだったのか。

とりあえず、Gladinetを終了させてみると、ブラウザからlocalhostに接続することができました。

次に、GladinetをXAMPPと同時に使えないか調べてみたのですが、どうやら、Gladinetの使用ポートを変えることはできないようです。
仕方がないので、XAMPP環境で開発するときは、手動でGladinetを終了させています。
同時に使えると結構便利なのですが・・・どなたか共存できる方法をご存じなら教えていただけると嬉しいです。

XAMPP環境でlocalhostに接続できない意外な原因” に対して 4 件のコメントがあります

  1. 匿名 より:

    同様の状態で苦労していましたが、この記事のお陰で解決しました。同じくGladinetが良くなかったようです。ありがとうございます。

  2. さくらぎけい より:

    お役にたてて良かったです。
    XAMPPのポートを変えるのがいいという話もあるのですが、XAMPPは検証用なのであんまり設定をいじりたくないんですよねー

  3. きた より:

    JSPでlocalhostの404 – File Not Found解決に大変役に立ちました。設定ばかり見てても駄目な場合もあるんですね~。感謝です!

    1. 川井 昌彦 より:

      お役にたてたようで良かったです。
      まずはどうやって原因を見つけるか、なんですよね。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です