curl работает в командной строке, а не в PHP - PullRequest
0 голосов
/ 09 ноября 2019

Я использую Drupal 8 на Fedora R 28 под управлением Apache / 2.4.39 с PHP 7.2.18. Моя функция php curl не работает, но тест командной строки работает нормально.

curl отображается в phpinfo (), определен в 20-curl.ini и не показывает никаких ошибок ни в одном журнале. файлы. Я пробовал два разных сертификата SSL. Тестирование возвращается с полетом.

Протоколы TLS 1.3 Нет TLS 1.2 Да TLS 1.1 Да TLS 1.0 Да SSL 3 Нет SSL 2 Нет

Все, что я получаю, это: ошибка cURL (7):Не удалось подключиться к серверу

echo 'Curl: ', function_exists('curl_version') ? 'Enabled' : 'Disabled'

возвращает Включено.

array(26) {
  ["url"]=>
  string(23) "http://www.example.com/"
  ["content_type"]=>
  NULL
  ["http_code"]=>
  int(0)
  ["header_size"]=>
  int(0)
  ["request_size"]=>
  int(0)
  ["filetime"]=>
  int(-1)
  ["ssl_verify_result"]=>
  int(0)
  ["redirect_count"]=>
  int(0)
  ["total_time"]=>
  float(0.000437)
  ["namelookup_time"]=>
  float(0.004549)
  ["connect_time"]=>
  float(0)
  ["pretransfer_time"]=>
  float(0)
  ["size_upload"]=>
  float(0)
  ["size_download"]=>
  float(0)
  ["speed_download"]=>
  float(0)
  ["speed_upload"]=>
  float(0)
  ["download_content_length"]=>
  float(-1)
  ["upload_content_length"]=>
  float(-1)
  ["starttransfer_time"]=>
  float(0)
  ["redirect_time"]=>
  float(0)
  ["redirect_url"]=>
  string(0) ""
  ["primary_ip"]=>
  string(0) ""
  ["certinfo"]=>
  array(0) {
  }
  ["primary_port"]=>
  int(0)
  ["local_ip"]=>
  string(0) ""
  ["local_port"]=>
  int(0)
}
cURL error (7):
 Couldn't connect to server

1 Ответ

1 голос
/ 09 ноября 2019

Оказывается, мне нужно было включить исходящие соединения. Не уверен, почему это не нужно для вызовов командной строки. Вероятно, он был сброшен при перезагрузке сервера.

setsebool httpd_can_network_connect true

Для получения дополнительной информации:

...