1. 程式人生 > >MacOSX apache 無法訪問伺服器

MacOSX apache 無法訪問伺服器

參考網上解決方案:

問題描述:由於刪除了/private/var/log下面的日誌,,導致重啟電腦後apache無法正常工作。

後果:重啟電腦後apache正常執行,訪問localhost或127.0.0.1無法找到伺服器

探索:問題出現後,由於$ sudo apachectl start不會報任何錯,但是訪問localhost或127.0.0.1始終失敗。

可能情況1:  沒有監聽80埠

排除可能1:監聽了80埠的。

可能情況2:hosts檔案配置有問題

排除可能2:localhost以前就沒問題,而且沒改過,排除。

懷疑點:80埠被佔用

排除懷疑點:終端執行$ sudo lsof -i TCP:80 -s TCP:LISTEN,沒有發現其他程式佔用,排除這個疑點。

終端$ sudo /usr/sbin/httpd -k start 問題出現了:No such file or directory: httpd: could not open error log file /private/var/log/apache2/error_log.

想起來刪除了log下的所有日誌檔案,最後建立資料夾apache2,就ok了。

解決方法是:在log目錄下,新建一個名為apache2的資料夾(終端$ sudo mkdir /private/var/log/apache2),然後重啟apache(終端$ sudo apachectl restart),會自動在apache2裡面重新生成apache需要的日誌,便可正常訪問和使用apache服務了。

=====================可愛的分割線==========================

2016/3/3補充:

最近對https做了一件事,就是生成pem檔案用於抓包解碼,不久後apache就不能訪問了,查了好多資料都無法解決,也不知是不是這個原因導致的,不過想想動相關這一塊的也就這件事了,後來查看了一下日誌:

/private/var/log/apache2/error_log

發現有很多 AH00016: Configuration Failed 的錯誤

通過 

apachectl configtest

提示 

Syntax OK

最後在httpd-vhost.conf中把HTTPS的站點配置去掉。

OK!