マイクロソフトさんが無償アップグレードのキャンペーンを展開したことなどにより、Windows 10 のシェアが拡大しているようです。一時期は強制的にアップグレードを行わせるなどのトラブルがあったりしましたが、PC の買い替え需要なども重なり、ゆるやかながら OS の移行が進んでいるように思われます。
そんななか、Windows 7 では問題なく動作していた XAMPP が Windows 10 に切り替えたことで動作しなくなるトラブルが出ているようです。正確には XAMPP の Apache が起動しなくなるトラブルなのですが、この原因と解決方法について解説したいと思います。
どんな症状なの?
Windows 10 で XAMPP をインストールし、コントロールパネルを表示した後に Apache のスタートボタンを押すと、次のようなエラーメッセージが表示されます。ちょっと長いですが、すべて引用してみましょう。
Error: Apache shutdown unexpectedly.
This may be due to a blocked port, missing dependencies,
improper privileges, a crash, or a shutdown by another method.
Press the Logs button to view error logs and check
the Windows Event Viewer for more clues
If you need more help, copy and post this
entire log window on the forums
雑な翻訳をすれば、「ポートがブロックされているので、Apache が予期しないシャットダウンをしたよ」とでています。XAMPP の Apache はデフォルトでは80番ポートを使用しているのですが、すでにこのポートが使われているのでバッティングしてしまったということです。
いったん Quit ボタンを押して XAMPP を終了させましょう。
どうやって解決するの?
ネットで調べてみると、Skype や Windows 10 からデフォルトで有効になった IIS (インターネットインフォメーションサービス)などが原因であるという情報が出てきます。
コマンドプロンプトの netstat コマンドを使って80番ポートを使っているアプリケーションを突き止め、停止したりアンインストールしたりしてもいいのですが、該当するアプリを使っているのでアンインストールしたくなかったり、いちいち調べるのが面倒臭いという人もいるかもしれません。
そこで、ここは XAMPP の使用するポートを変更することにしましょう。xampp/apache/conf フォルダの中に httpd.conf というファイルがあるので、これをテキストエディタで開きます。Windows 向け の XAMPP バージョン5.6.28の場合、58行目に次のような記述があります。
デフォルトで80番ポートに設定されていますが、これを変更します。空いているポートであれば何番でもよいのですが、慣例的に8080番を指定することが多いようなので、それに倣うことにします。
変更後、上書き保存をしてテキストエディタを終了します。
動作確認
XAMPP のコントロールパネルを立ち上げて、Apache の起動ボタンを押してください。
ポートが8080番に変更されていることが確認されれば成功です。
ブラウザからのアクセス方法
Apache のデフォルトのポートを変更してしまったため、今までのローカルサーバーへのアクセス方法ではうまくいきません。次の書式でアクセスする必要があります。
1 | http://(Web サーバーのホスト名):(Web サーバーのポート番号)/... |
「http://localhost/」だった場合、「http://localhost:8080/」に変更しないとアクセスに失敗します。ブラウザはポート番号を省略すると80番ポートとみなしていたということですね。
例えば、XAMPP に WordPress をアップロードしてログイン画面にアクセスする場合には、ブラウザのアドレスバーに次のように入力します。
1 | http://localhost:8080/wordpress/wp-login.php |
Comment