
不是重複的,請在嘗試標記為重複時耐心等待。謝謝。
環境:
- Mac OS X EL Capitan 64 位
- 阿帕契 2.4.25 (Unix)
平
ping 127.0.0.1
返回:
來自 127.0.0.1 的 64 個位元組:icmp_seq=0 ttl=64 time=0.081 ms來自 127.0.0.1 的 64
個位元組:icmp_seq=1 ttl=64 time=0.111 ms
...
遠端登入:
telnet 127.0.0.1 80
返回:
嘗試 127.0.0.1...
telnet:連線到位址 127.0.0.1:連線被拒絕
telnet:無法連線到遠端主機
盾:
scutil -r localhost
返回:
可達
配置測試:
apachectl configtest
返回:
語法確定
$路徑
/usr/local/bin
/usr/bin
/bin
/usr/local/sbin
/usr/sbin
/sbin
幾次apachectl restart
完整的系統重新啟動都沒有成功!我的 Apache 安裝有什麼問題?
更新1
捲曲
curl -v http://127.0.0.1
返回:
重建 URL 為:http://127.0.0.1/
嘗試 127.0.0.1...
連線至 127.0.0.1 埠 80 失敗:連線被拒絕
無法連線到 127.0.0.1 埠 80:連線被拒絕
關閉連線 0
curly:(7) 無法連線到127.0.0.1 連線被拒絕關閉連線 0 curly:(7) 無法連線到127.0.0.1 連線被埠80:連線被埠拒絕
更新2
拉索夫
lsof -i:80
返回:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
Google 349 peyman 126u IPv4 0x23528848eb5fe4db 0t0 TCP 192.168.1.102:49238->ec2-54-197-238-119.compute-1.amazonaws.com:http (ESTABLISHED)
Google 349 peyman 147u IPv4 0x23528848ec35769b 0t0 TCP 192.168.1.102:49286->151.101.193.69:http (ESTABLISHED)
Google 349 peyman 164u IPv4 0x23528848ebfa413b 0t0 TCP 192.168.1.102:49290->ec2-23-23-98-233.compute-1.amazonaws.com:http (ESTABLISHED)
Google 349 peyman 170u IPv4 0x23528848ebfa031b 0t0 TCP 192.168.1.102:49242->pixel.quantserve.com:http (ESTABLISHED)
Google 349 peyman 188u IPv4 0x23528848ec330dbb 0t0 TCP 192.168.1.102:49248->151.101.65.69:http (ESTABLISHED)
Google 349 peyman 189u IPv4 0x23528848ebe7185b 0t0 TCP 192.168.1.102:49308->ec2-23-21-110-0.compute-1.amazonaws.com:http (ESTABLISHED)
Google 349 peyman 208u IPv4 0x23528848ec35885b 0t0 TCP 192.168.1.102:49272->a72-247-178-186.deploy.akamaitechnologies.com:http (ESTABLISHED)
答案1
在您發布的內容中,我沒有看到任何 Apache 監聽連接埠 80 的證據;我只看到其他系統上連接埠 80 的出站連接。該telnet 127.0.0.1 80
命令不顯示 Apache 可以存取;如果netstat -a | grep http | grep LISTEN
您使用連接埠 81、85、800 等,您會看到相同的結果。如果 Apache 實際上正在偵聽連接埠 80 上的連接,您應該會在行尾看到一行「*.http」和「LISTEN」。在 OS X El Capitan 下執行 Apache Web 伺服器。
如果您沒有看到一行輸出表示它正在偵聽連接埠 80,而只是返回 Bash shell 提示符,則發出該命令,sudo apachectl start
然後再次發出 netstat 命令。如果您現在看到一個進程正在偵聽連接埠 80,則可以再次嘗試 telnet 命令。如果 Apache 在連接埠 80 上回應,您應該會看到Escape character is '^]'.
此時您可以發出命令HEAD / HTTP/1.0
,然後按 Enter 幾次。您應該會看到 Apache 回應並輸出類似於以下輸出的內容:
$ telnet 127.0.0.1 80
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
HEAD / HTTP/1.0
HTTP/1.1 200 OK
Date: Sat, 11 Mar 2017 01:44:13 GMT
Server: Apache/2.4.18 (Unix) PHP/5.5.38
Last-Modified: Fri, 03 Feb 2017 21:44:57 GMT
ETag: "a8-547a7315f6840"
Accept-Ranges: bytes
Content-Length: 168
Connection: close
Content-Type: text/html