更新1

更新1

不是重複的,請在嘗試標記為重複時耐心等待。謝謝。

環境:

  • 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

相關內容