Я знаю, что есть такая же тема, но не то же самое. У меня есть рабочий код, протестированный с большим количеством разных url-http и https, без каких-либо проблем. Затем я нашел веб-сайт ... когда я спрашиваю URL-заголовок, я получил пустой ответ массива.PHP get_headers и curl оба дают пустой результат
get_headers("https://www.diversalertnetwork.org/diving-incidents/Divers-air-consumption-appeared-unbelievably-good", 1);
И в результате получается EMPTY массив.
Array
(
)
Я также пытаюсь использовать CURL, но такой же результат. Я пытаюсь загрузить контент url, но ничего. Можешь попробовать. Сюрприз! Если я изменю на http: // из https: //, он начнет работать. Конечно, https-ссылка работает очень хорошо в браузере. Кроме того, get_headers работают с другими ссылками https: //. С curl я использую свой собственный пользовательский агент своего браузера, так что это реально, если сервер попытается обнаружить по какой-либо причине безопасности. Я действительно не знаю, что я могу сделать, и самое главное, что происходит, почему нет ответа, а не ошибка или что-то еще.
PHP 5.6
Браузер предупреждает о подключении HTTPS этого сайта: _ "Подключение к этому месту использует устаревший протокол TLS (1,0), устаревший обмен ключами (RSA) и устаревший шифр (3DES_EDE_CBC с HMAC-SHA1). "Таким образом, может быть просто, что на вашей системе соединение HTTPS с сайтами, которые поддерживают только устаревшие протоколы безопасности, отключено. Правильно ли настроен отчет об ошибках PHP для отображения предупреждений? – CBroe
Да, это так. \t ini_set ("display_errors", 1); \t ini_set ("error_reporting", E_ALL^E_NOTICE); В любом случае, мой хром покажет мне (i) перед ссылкой и не зеленый, но если я прочитаю информацию, то сказал: Действительный сертификат Подключение к этому сайту с использованием действительного сертификата доверенного сервера. –
Да, но если вы проверите детали, вы увидите то же предупреждение, которое я процитировал. И для меня вышеуказанная строка кода работает нормально и возвращает заголовки. – CBroe