![無法啟動 apache HTTP 伺服器](https://rvso.com/image/1615266/%E7%84%A1%E6%B3%95%E5%95%9F%E5%8B%95%20apache%20HTTP%20%E4%BC%BA%E6%9C%8D%E5%99%A8.png)
在我的開發伺服器上推送我的 Laravel 專案後,我似乎無法再運行 apache 2。
運行命令列後:
sudo systemctl 狀態 apache2
我收到以下錯誤:
●apache2.service - Apache HTTP 伺服器已載入:已載入(/lib/systemd/system/apache2.service;已啟用;供應商預設:已啟用) 活動:自2020 年2 月3 日星期一起失敗(結果:退出代碼) 02: 17:48 世界標準時間; 1 分鐘 17 秒前流程:1631 ExecStart=/usr/sbin/apachectl start (code=exited, status=1/FAILURE)
在 Google 上搜尋了一下後,發現 apache 無法啟動,因為多個進程正在使用連接埠 80..
但是,運行命令列後:
須藤 lsof -i TCP:80
我得到以下進程的列表:
指令PID 使用者FD 類型設備大小/關閉節點名稱google_ne 716 root 7u IPv4 18497 0t0 TCP instance-development-webapp-eatology.c.webapp-eatology.internal:34086->metadata.google.internal:http(已建立)google _ac 717根 5u IPv4 18475 0t0 TCP 實例開發-webapp-eatology.c.webapp-eatology.internal:34082->metadata.google.internal:http(已建立) google_cl 719 根 5u IPv4 18478 0t0 .c.webapp-eatology.internal:34084->metadata.google.internal:http (已建立) google_cl 719 root 6u IPv4 18402 0t0 TCP 實例開發-webapp-eatology.c.webapp-eatology.internal:34080->元資料.google.internal:http (CLOSE_WAIT)
問題是,我不明白如何殺死這些進程中的每一個,我嘗試了很多命令列但沒有成功。
感謝您的幫助 !
答案1
跑步 :
netstat -tulpn | grep 80
看看你所在的行:
Proto : tcp
Local address : *.*.*.*:80
取得 Pid 或進程名稱列值:
<pid_or_process_name>:80
使用 pid 或進程名稱殺死持有埠 80 的進程:
pkill -9 <process_name>
或者
kill -9 <pid>
最後,這仍然是一個解決方法,您必須找出負責暴露連接埠 80 的進程並停用它,或者只是將其設定檔更改為指向不同的連接埠而不是 tcp/80,因為之後您將遇到相同的問題重新啟動。