Почему при использовании php file_get_contents () нужно добавить имя сетевой карты в адрес хоста ipv6-ссылки в linux? - PullRequest
0 голосов
/ 11 декабря 2018

У меня возникает вопрос, когда я пытаюсь запросить адрес хоста ipv6-ссылки на Centos7.

Вот мой код.

var_dump(json_decode(@file_get_contents('http://[fe80::852f:f5c7:15f1:d726]:8080/api/init/info', 0, $ctx), true)['data']);

Он отлично работает на сервере Windows.

Но когда я выполняю этот код в Linux.Я получаю NULL.

Мне пришлось изменить свой код на

var_dump(json_decode(@file_get_contents('http://[fe80::852f:f5c7:15f1:d726%eno16777984]:8080/api/init/info', 0, $ctx), true)['data']);

Я добавляю имя сетевой карты после адреса хоста моей ссылки, и она работает.

Интересно, чтоВ этом разница между Windows и Linux.

Есть ли какой-нибудь подход, который я могу просто запросить адрес узла ссылки без имени сетевой карты в Linux?

Действительно признателен за вашу помощь!Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...