前幾天因為 PhotoShop CS2 一直掛掉,錯誤訊息是:

Microsoft Visual C++ Runtime Library Runtime Error! 
Program:  D:\Adobe\Photoshop.exe R6025
- pure virtual function call

上網查一下,"Runtime error P6025 pure virtual function call on Program C:\Windows\Explorer.exe Windows 7" 這篇說可以重新安裝 .NET framework 3.5.1 讓它變正常,如法炮製的裝了以後,PhotoShop CS2 容易當機的問題還沒解決,Apache 就開不起來了。

Apache 啟動時的錯誤訊息是:

(OS 10013) 嘗試存取通訊端被拒絕,因為存取權限不足。
(OS 10013) An attempt was made to access a socket in a way forbidden by its access permissions.

透過 netstat -ano 這個指令去查,佔住 80 port 的程序的 PID 是 4,反查這個 PID 發現 process name 是 "system",傷惱筋,這哪知道是誰啊?

"Apache won't start, Apache won't start for some reason." 這篇提到應該是 IIS 佔住的:

Correction: IIS was installed!
It was being run under the name "World Wide Web Publishing Service" in Windows 8. Disabled that and AMPPS starts right up.

正解是:裝了IIS!
它在 Windows 8 執行了 World Wide Web Publishing 服務。停止它之後 AMPPS (Apache + MySQL + PHP + Python + Softaculous auto-installer) 就能正常運作了。

看起來應該是我在安裝 .NET framwork 時不小心一併裝到了 IIS?反正,因為我不會用到 IIS,所以就照著這個建議把 IIS 給移除掉:到「控制台」→「程式和功能」→「開啟或關閉 Windows 功能」,把 "Internet Information Services" 的勾選給拿掉,按下「確定」,系統就會把 IIS 給解除安裝掉。

IIS 反安裝後會重新開機,重開機登入後再啟動 Apache,目前看起來就一切都正常了。

 

(2023/10/21 update!) 時隔多年又遇到一樣問題,但這次很確定沒有安裝 IIS。同事提供給我的解決方案是在命令提示字元執行以下 command,以便關閉佔用 HTTP (port 80) 的服務:

net stop http

在我的環境執行上述指令後,系統告訴我會嘗試關閉以下服務:

  • SSDP Discovery(隨插即用)
  • Print Spooler(網路印表機)
  • BranchCache(企業內部網路 WAN 節流用)

我們詢問微軟,微軟說 Print Spooler 是使用 port 135、並不會真的使用到 port 80,會用到的是 BranchCache。

但是我們的權限控管很嚴格,要停掉 BranchCache,無法直接從控制台的「服務 (Services)」停止;也無法直接右鍵「以系統管理員執行」來取得有管理者權限的命令提示字元視窗。

所以停止的步驟要多一點:

  1. 先執行以下指令,開啟具有系統管理員權限的命令提示字元視窗:
    runas /user:{具administrator權限之帳號} cmd
  2. 執行停止 BranchCache 服務的指令:
    net stop branchcache

 

之所以不把兩者濃縮為一行,是因為合成一行變成 runas /user:admin cmd "net stop branchcache" 之後,會無法看到 net stop brancache 執行結果,如果有錯誤訊息將不便留存觀察。

至於要不要直接完全停用 BranchCache,則需要視企業各別狀況決定。

 

如果很確定佔走 port 80 的是 IIS,而且想知道怎麼查到佔用 port 80 的 IIS 子網站是哪個,可參考黑暗執行緒的《PowerShell 小工具 - 列舉傾聽的 TCP Port 與其對應程式》

arrow
arrow
    文章標籤
    IIS APACHE
    全站熱搜

    小攻城師 發表在 痞客邦 留言(0) 人氣()