昨年暮れに、事務所のPCのHDDがおかしくなり、起動できなったので、色々環境を再構築中。
そんな中で、運用中のサービスでエラーが出て原因追求用にローカルで確認しようと
XAMPPを入れて、Apacheを起動しようとしたら動かない…
Port-Check すると ポート 80 が 「Process:System」 でふさがってる。
詳細を調べるのに 「netstat -oan」でPIDを調べてみると「4」
タスクマネージャーで列の選択で「PID」を選び、「すべてのユーザーのプロセスを表示」とすると
「NT Kernel & System」と…
ちょっとググって見ると Windows7 でApache が起動できない場合 PID=4 System … こんなページを発見。
下記のサービスが関係あるとのこと
・BranchCache
・SQL Server Reporting Service
・Web Deployment Agent Service
・Windows Remote Management
サービスを確認すると 起動しているのは 「SQL Server Reporting Service」だけ。
試しに停止させてみると、空きましたよ。
原因がはっきりすれば、このサービスの使用ポートを変更するだけ。
スタート > Microsoft SQL Server 2012 > 構成ツール > Reporting Services 構成マネージャー を起動。
接続先を選択するダイアログが表示されるので、選択して(通常はそのまま)【接続】ボタンで接続。
※PC名は塗りつぶしてます。(ヘッダーと左のペインなどに表示されている)
「WebサービスURL」 と 「レポートマネージャーURL」のポートを変更する。
「WebサービスURL」 (赤枠が変更後のポート。元はもちろん 80)
「レポートマネージャーURL」(変更後)
【詳細設定】ボタンでポートを変更する
【編集】ボタンで 80 → 10800 に変更した。
この後、(【適用】ボタンで随時反映した後)もう一度 「netstat -oan」で確認して空いたことを
確認して XAMPPの Apache 起動…無事起動を確認。
手間取ったわー。最初、WebサービスURLだけ変更して、状況が変わらん!と焦ってみたりしたけどね。
追記:
上の対応でうまくいってたんだけど…いつの間にかダメに。
色々試すと、「World Wide Web Publishing Service」が動いているので、こいつを”停止”してみる
…ダメ。モノは試しで、「SQL Server Reporting Service」も”停止”すると…動いたよ?
Portの設定を確認してみるとちゃんと変わってる。オカシイなぁ。