我遇到了Apache 2.4.18的問題(在OS X El Capitan 10.11.6上),我無法確定原因是什麼。我已經花了4天的時間來解決這個問題(包括在這裏搜索),但是我在扔毛巾,只是問。Apache配置,無法連接到本地主機
我在這裏沒有什麼經驗。在上個週末的一些指南之後,我試圖建立自己的系統,讓我在開發學習HTML/Javascript/PHP的過程中開發一個站點。遵循一些指南,我安裝了dnsmasq並嘗試配置httpd.conf和httpd-vhosts.conf。最初,localhost將我指向「It Works」頁面,我的虛擬主機home.dev和sites.dev也是如此。無論我做了什麼,我都無法將任何* .dev網站指向我的virtualdocumentroot中的實際index.html文件。
我已經試過
- 添加
home.dev
到/etc/hosts
- 開啓了網絡共享
- 經過防火牆 - 80端口是開放的
- 更改的DocumentRoot在
httpd.conf
根在虛擬主機使用的文件 - 嘗試了許多不同的
httpd-vhosts.conf
配置。 - 在我的目錄經過報價 - 最初使用文本編輯他們是不同的,在崇高2.
- 運行
apachectl configtest
改變 - 語法是好的
現在問題越來越嚴重。在處理配置文件試圖解決這個問題時,我打破了一些東西,我不知道是什麼。意外覆蓋原件文件夾中的httpd.conf
文件。試圖使用httpd.conf
文件,我發現搜索默認,不起作用。在這一點上,我很高興剛纔看到「它工作的」再......
- 本地主機,127.0.0.1 home.dev等都開設「不可用」或拒絕連接頁面。
- 正在運行
sudo netstat -an | grep ':80'
什麼也沒有返回,所以從我瞭解的情況來看,雖然在httpd.conf
中有一個明確的語句listen 80
,但看起來apache並沒有在80上進行監聽。 - 運行
apachectl configtest
- 語法還行 - 運行
sudo apachectl restart
- 似乎開始 - 讀的地方,有人提到的/ var /日誌/ Apache2的可能缺失而引起的錯誤,它的存在。錯誤日誌沒有任何東西
不知道我是否應該在這裏發佈我的.conf,有什麼建議嗎?
謝謝!
更新8/20:
至今還沒有找到一個解決方案,但覺得我在進步:
ping localhost
是成功的(從127.0.0 64個字節。1)curl -v http://localhost/
在所有嘗試(:: 1,fe80 :: 1,127.0.0.1等)上返回'連接被拒絕'。
某處,看起來Apache正在運行(對嗎??),我只是不明白在哪裏或如何弄清楚。
sudo lsof -i -P | grep -i "listen"
不會返回在*:80上監聽的任何內容。也看不到任何聽起來像apache的進程(只有launchd,dnsmasq,mysqld,kdc和Skype)。我的hosts文件設置爲這樣:
127.0.0.1本地主機
255.255.255.255 broadcasthost
:: 1本地主機
FE80 :: 1%lo0的本地主機的httpd.conf (先前聽80,這個改變沒有解決任何問題)
Listen 0.0.0.0:80
個
在錯誤日誌中沒有錯誤,因爲3天前,當我不小心刪除了服務器名httpd.conf中(加回):)
是否有一個的netstat/lsof的命令,我可以進入並找出端口apache正在監聽?也許這會讓我在這裏開始正確的方向。
我會嘗試「ps auxw | grep httpd」其中httpd是二進制文件,看看它是否真的開始。如果不試圖找出爲什麼它還沒有開始,那麼Mac OS X中的「strace」或其他類似工具可能會有所幫助。 –
'ps auxw | grep httpd'返回PID 4488,狀態U +。似乎正在運行。 – Severniy
然後運行'lsof -p 4488'它應該說明它正在使用哪個端口。也很高興知道您用來運行服務器的命令的確切程度。 –