У меня случайный «зависает без ошибок» при выполнении запросов на завивки. Я пытаюсь обнаружить происхождение, поскольку веб-сервер и php-журналы не показывают никаких ошибок, поэтому я попытался включить CURLOT_STDERR
.curl windows: предоставленный дескриптор файла не доступен для записи
У меня есть следующий код:
$file = 'curl.txt';
$curl = curl_init();
$curl_log = fopen($file, 'rw');
var_export(is_writable($file));
$url = 'http://www.google.com';
curl_setopt_array($curl, array(
CURLOPT_URL => $url,
CURLOPT_VERBOSE => 1,
CURLOPT_STDERR => $curl_log,
CURLOPT_RETURNTRANSFER => 1
));
$response = curl_exec($curl);
rewind($curl_log);
$output= fread($curl_log, 2048);
echo '<pre>'. print_r($output, 1). '</pre>';
fclose($curl_log);
is_writable
возвращает истинное, но завиток исполнение умирает со следующей ошибкой:
curl_setopt_array(): the provided file handle is not writable
Я бегу PHP 7.0.15 Fast CGI на Windows, Машина.
Кажется, у пользователя CURL нет разрешений на запись, но я могу писать в этом файле, используя другие функции PHP.
'if (! $ Curl_log) { throw new \ RuntimeException ('fopen failed'); } var_dump ($ curl_log); ' – hanshenrik
Привет, fopen работает и возвращает допустимый файловый ресурс. – urantiana
как насчет 'var_dump (fwrite ($ curl_log, 'test'));'? он должен возвращать int (4) – hanshenrik