Skype を起動すると、Apache HTTP Daemon を起動できなくなる。
最終的に解決に繋がった資料:
以下のように Skype の設定を変更すれば解決できる。
- 「ツール」→「設定」をクリックして、【設定】ダイアログを開く。
- 「詳細」→「接続」をクリックして、「上記のポートに代わり、ポート80を使用」のチェックを外す。
- 「保存」ボタンを押した後、Skype を再起動する。
ここに辿り着くまで結構嵌った。
まず、インストール直後には起動できていたはずの Apache HTTP Daemon が、いつの間にか起動できなくなっていた事が発端。
【イベントビューア】ツリーの「Windows ログ」ノード直下の「システム」にあるイベントを見ると、主に以下のような情報しかない。
Apache2.2 サービスは、サービス固有エラー 1 (0x1) で終了しました。
ソース: Service Control Manager Eventlog
イベントID: 7024
Microsoft の公式ページを見ても、解決に繋がる情報は載っていない。
かろうじて、sc query service_name コマンドを実行すれば、それらしき情報が得られる的な記述はあるが、実際に実行して得られた結果は以下の通り。
>sc query Apache2.2SERVICE_NAME: Apache2.2
TYPE : 10 WIN32_OWN_PROCESS
STATE : 1 STOPPED
WIN32_EXIT_CODE : 1066 (0x42a)
SERVICE_EXIT_CODE : 1 (0x1)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
これでは殆ど役に立たない。
一方、同じ「Windows ログ」ノード直下の「アプリケーション」にあるイベントを見ると、以下のような情報が出ていた。
The Apache service named reported the following error:
>>> Unable to open logs
ソース: Apache Service
イベントID: 3299
な〜んだ!ログファイルへの出力が失敗していたのか!
…と思いきや、実は別プロセスとポート番号が競合していましたというオチだった。
netstat -ano コマンドで確認すると、Skype がポート80を使用していることが判明した。
本日得られた教訓 … ログは分り易く出力しよう!
その他の参考資料: