Я создаю искатель веб-сайта и использую класс cURL с этими параметрами для получения заголовков, чтобы я мог извлечь их mime/type
и content-length
перед загрузкой полного сайта, чтобы он был как text/html
и ниже заданных ограничений размера.
это мои варианты завивки
$c->setopt(CURLOPT_URL, $theURL); $c->setopt(CURLOPT_HEADER, false); $c->setopt(CURLOPT_RETURNTRANSFER, true); $c->setopt(CURLOPT_TIMEOUT, 10); $c->setopt(CURLOPT_CONNECTTIMEOUT, 10); $c->setopt(CURLOPT_NOBODY, TRUE); $c->setopt(CURLOPT_FOLLOWLOCATION, TRUE); $c->setopt(CURLOPT_MAXREDIRS, 2); // Within Class $theReturnValue = curl_exec($this->m_handle); $this->m_status = curl_getinfo($this->m_handle) ;
но он всегда возвращает [download_content_length] => -1
даже без CURLOPT_NOBODY
однако CURLOPT_NOBODY
данные (весь файл) верны.
Документы libcurl для CURLINFO_CONTENT_LENGTH_DOWNLOAD (это то, что использует привязка PHP):
"это возвращает -1, если размер неизвестен"