1
我有一個非常惱人的問題與MAMP和嘗試連接到外部源的所有功能。PHP MAMP fsockopen失敗,如果沒有IPv6 DNS條目可用
我在我的應用程序中有一個非常簡單的fsockopen。
$fp = fsockopen($this->port == 443 ? 'ssl://' . $this->host : $this->host, $this->port, $errno, $errstr, 20);
這是我們的合作伙伴提供的一個庫。一切都被罰款,直到最後的MAMP或OSX更新我不確定。
該行產生以下錯誤:
Warning: fsockopen(): php_network_getaddresses: getaddrinfo failed: nodename nor servname provided, or not known
我已經讀了很多關於這個錯誤,如果名稱不解決出現的錯誤。所以我做了一些其他檢查,問題似乎是ipv6的決議。該網站沒有IPv6 DNS-Entry,但連接嘗試使用IPv6,並且出現錯誤並且連接已關閉。
,如果我嘗試在命令行上是相同的:
ping6: getaddrinfo -- nodename nor servname provided, or not known
我得到了同樣的錯誤。那麼,如果沒有可用的名稱,爲什麼PHP不會回落到IPv4呢?
禁用IPv6不起作用。將v4地址添加到我的hosts文件沒有任何影響。
好吧,我認爲這是一個10.12.4的問題,也許有人知道這個問題的一些問題。 – Stony