Openserver curl error

Пытаюсь установить laravel 8 на OpenServer(PHP 7.4) через Composer (Стоит последняя версия Composer 2.0.8) До этого стояла более старая версия laravel, удалил её, чтобы поставить новую. Находясь в c:

Пытаюсь установить laravel 8 на OpenServer(PHP 7.4) через Composer
(Стоит последняя версия Composer 2.0.8)
До этого стояла более старая версия laravel, удалил её, чтобы поставить новую.
Находясь в c:openserver ввожу команду composer global require laravel/installer в терминал OpenServer.
(Если вводить composer create-project laravel/laravel example-app ,то тоже выводит ошибки)
Сперва установка идёт нормально, затем выводится такое сообщение:

Failed to download symfony/console from dist: curl error 60 while downloading https://codeload.github.com/symfony/console/legacy.zip/12e071278e396cc3e1c149857337e9e192deca0b: SSL certificate problem: unable to get local issuer certificate
    Now trying to download from source
 1/3 [=========>------------------]  33%    Failed to download symfony/filesystem from dist: curl error 60 while downloading https://codeload.github.com/symfony/filesystem/legacy.zip/d99fbef7e0f69bf162ae6131b31132fa3cc4bcbe: SSL certificate problem: unable to get local issuer certificate
    Now trying to download from source
 2/3 [==================>---------]  66%    Failed to download symfony/process from dist: curl error 60 while downloading https://codeload.github.com/symfony/process/legacy.zip/075316ff72233ce3d04a9743414292e834f2cb4a: SSL certificate problem: unable to get local issuer certificate
    Now trying to download from source
  - Installing symfony/process (v4.4.18): Cloning 075316ff72
    Install of symfony/process failed
  - Installing symfony/filesystem (v4.4.18): Cloning d99fbef7e0
    Install of symfony/filesystem failed
  - Installing symfony/console (v4.4.18): Cloning 12e071278e
    Install of symfony/console failed
    0 [>---------------------------]
Installation failed, reverting ./composer.json and ./composer.lock to their original content.

  [RuntimeException]
  Failed to clone https://github.com/symfony/process.git, git was not found, check that it is instal
  led and in your PATH env.

  'git' is not recognized as an internal or external command,
  operable program or batch file.

Пробовал установить более старую версию, которая была раньше, тоже ошибка.
Насколько я вижу, Composer пишет что-то про Git, однако для установки Laravel ведь он не нужен ?
По крайней мере на оф. сайте про это нигде не сказано, и в туториалах такого нет.
Или я что-то не так понимаю ?

I’m trying to establish laravel 8 on OpenServer(PHP 7.4) through Composer
(The latest version of Composer 2.0.8)
Before that, the older version of laravel removed it to make a new one.
Getting in. c:openserver command composer global require laravel/installer OpenServer terminal.
(Cell phone rings) composer create-project laravel/laravel example-app Which makes mistakes too.
In the first place, the installation is going well, then the message is:

Failed to download symfony/console from dist: curl error 60 while downloading https://codeload.github.com/symfony/console/legacy.zip/12e071278e396cc3e1c149857337e9e192deca0b: SSL certificate problem: unable to get local issuer certificate
    Now trying to download from source
 1/3 [=========>------------------]  33%    Failed to download symfony/filesystem from dist: curl error 60 while downloading https://codeload.github.com/symfony/filesystem/legacy.zip/d99fbef7e0f69bf162ae6131b31132fa3cc4bcbe: SSL certificate problem: unable to get local issuer certificate
    Now trying to download from source
 2/3 [==================>---------]  66%    Failed to download symfony/process from dist: curl error 60 while downloading https://codeload.github.com/symfony/process/legacy.zip/075316ff72233ce3d04a9743414292e834f2cb4a: SSL certificate problem: unable to get local issuer certificate
    Now trying to download from source
  - Installing symfony/process (v4.4.18): Cloning 075316ff72
    Install of symfony/process failed
  - Installing symfony/filesystem (v4.4.18): Cloning d99fbef7e0
    Install of symfony/filesystem failed
  - Installing symfony/console (v4.4.18): Cloning 12e071278e
    Install of symfony/console failed
    0 [>---------------------------]
Installation failed, reverting ./composer.json and ./composer.lock to their original content.

[RuntimeException]
Failed to clone https://github.com/symfony/process.git, git was not found, check that it is instal
led and in your PATH env.

'git' is not recognized as an internal or external command,
operable program or batch file.

I’ve been trying to figure out the older version that used to be, too.
As I can see, Composer writes something about Git, but it’s not necessary for Laravel, is it?
At least there’s no word on the owl, and there’s no such thing in the tampers.
Or there’s something I don’t understand?

1 / 1 / 2

Регистрация: 22.09.2015

Сообщений: 65

1

08.02.2016, 07:20. Показов 35996. Ответов 15


Доброго времени суток!

При попытке отправить данные с сервера выходит ошибка Fatal error: Call to undefined function curl_init()
Проверила на сервере наличие библиотеки php_curl.dll, она вроде бы есть, да и в php.ini строчка extension= php_curl.dll расскомментирована, а больше никаких советов по решению данной проблемы найти не смогла (на сервере стоит не Denwer).Не могли бы Вы подсказать, как исправить данную ошибку?

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь



0



Gcom

82 / 82 / 18

Регистрация: 03.02.2016

Сообщений: 564

Записей в блоге: 1

08.02.2016, 07:36

2

Посмотрите ошибку следующим кодом (что выдавать будет):

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$aOptionsCURL = array (
                CURLOPT_URL            => $url,
                CURLOPT_CUSTOMREQUEST  => 'POST',
                CURLOPT_POSTFIELDS     => $requestItem,
                CURLOPT_RETURNTRANSFER => true,
                CURLOPT_TIMEOUT        => 10,
                CURLOPT_SSL_VERIFYPEER => false,
                );
$sOptionsSessionCURL = curl_init();
curl_setopt_array ($sOptionsSessionCURL, $aOptionsCURL);
 
$sResultHTML = curl_exec($sOptionsSessionCURL);
if (curl_errno ($sOptionsSessionCURL)) { 
echo '<br><br>cURL Error: ' . curl_error ($sOptionsSessionCURL);

И желательно код запроса бы видеть



1



1 / 1 / 2

Регистрация: 22.09.2015

Сообщений: 65

08.02.2016, 08:28

 [ТС]

3

Я попробовала то что Вы написали,

Цитата
Сообщение от Gcom
Посмотреть сообщение

Посмотрите ошибку следующим кодом (что выдавать будет):
PHPВыделить код
$aOptionsCURL = array (
CURLOPT_URL => $url,
CURLOPT_CUSTOMREQUEST *=> ‘POST’,
CURLOPT_POSTFIELDS => $requestItem,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 10,
CURLOPT_SSL_VERIFYPEER => false,
);
$sOptionsSessionCURL = curl_init();
curl_setopt_array ($sOptionsSessionCURL, $aOptionsCURL);
$sResultHTML = curl_exec($sOptionsSessionCURL);
if (curl_errno ($sOptionsSessionCURL)) {
echo ‘<br><br>cURL Error: ‘ . curl_error ($sOptionsSessionCURL);

выдало ошибку Use of undefined constant CURLOPT_URL — assumed ‘CURLOPT_URL’ ( не только для CURLOPT_URL, но и для всех остальных), ну и традиционную Fatal error: Call to undefined function curl_init()



0



82 / 82 / 18

Регистрация: 03.02.2016

Сообщений: 564

Записей в блоге: 1

08.02.2016, 08:30

4

Скиньте весь код который вы используете для запроса на сервер.



0



annie88

1 / 1 / 2

Регистрация: 22.09.2015

Сообщений: 65

08.02.2016, 08:33

 [ТС]

5

Попробовала запустить эти функции на другом web-сервере, там почему-то все прошло нормально, хотя настройки на нем такие же, как и на первом.

Добавлено через 1 минуту

PHP
1
2
3
4
5
6
7
if($curl = curl_init()){
    curl_setopt($curl, CURLOPT_URL, $url );
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    $out = curl_exec($curl);
    echo 'out = '.$out.'<br/>';
    curl_close($curl);
}



0



Gcom

82 / 82 / 18

Регистрация: 03.02.2016

Сообщений: 564

Записей в блоге: 1

08.02.2016, 08:49

6

Что выводит следующий код? :

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php 
header ("Content-Type:text/html; charset=UTF-8");
ini_set ('display_errors', 1); 
error_reporting (E_ALL); 
 
$url = "https://www.cyberforum.ru";
 
$aOptionsCURL = array (
                CURLOPT_URL            => $url,
                CURLOPT_CUSTOMREQUEST  => 'POST',
                //CURLOPT_POSTFIELDS     => $request,
                CURLOPT_RETURNTRANSFER => true,
                CURLOPT_TIMEOUT        => 10,
                CURLOPT_SSL_VERIFYPEER => false,
                );
$sOptionsSessionCURL = curl_init();
curl_setopt_array ($sOptionsSessionCURL, $aOptionsCURL);
 
$sResultHTML = curl_exec($sOptionsSessionCURL);
if (curl_errno ($sOptionsSessionCURL)) { 
    echo '<br><br>cURL Error: ' . curl_error ($sOptionsSessionCURL);
};
print_r ($sResultHTML);
?>

И какие web-сервера используете?



0



1 / 1 / 2

Регистрация: 22.09.2015

Сообщений: 65

08.02.2016, 08:58

 [ТС]

7

Цитата
Сообщение от Gcom
Посмотреть сообщение

И какие web-сервера используете?

web-сервер apache, на самом компьютере стоит Windows Server 2003.
попробовала выполнить код, вышла та же самая ошибка с неизвестными константами и неопределенной функцией curl_init() .
Другой web-сервер( настройки такие же) вернул страницу cyber-форума.
А может прокси-сервер как-нибудь заблокировать выполнение этой функций?



0



82 / 82 / 18

Регистрация: 03.02.2016

Сообщений: 564

Записей в блоге: 1

08.02.2016, 09:13

8

А полностью можно страничку что выдал скрипт (обработанный Вашем web-сервером)



0



1 / 1 / 2

Регистрация: 22.09.2015

Сообщений: 65

08.02.2016, 09:25

 [ТС]

9

1 скрин — результат выполнения на другом сервере (где все нормально выполняется), 2 скрин, это то, что выдается на сервере который мне нужен

Миниатюры

Ошибка  Call to undefined function curl_init()
 

Ошибка  Call to undefined function curl_init()
 



0



162 / 161 / 66

Регистрация: 28.06.2015

Сообщений: 576

08.02.2016, 09:35

10

Цитата
Сообщение от annie88
Посмотреть сообщение

сервере наличие библиотеки php_curl.dll, она вроде бы есть, да и в php.ini строчка extension= php_curl.dll

php_curl.dll дает лишь доступ для php к cURL(который в свою очередь установлен в самой оси) поэтому у вас на сервере все работает, т.к. curl установлен. Вот ссылка почитайте. Попробуйте установить.
Еще ссылка



1



82 / 82 / 18

Регистрация: 03.02.2016

Сообщений: 564

Записей в блоге: 1

08.02.2016, 09:37

11

Цитата
Сообщение от annie88
Посмотреть сообщение

2 скрин, это то, что выдается на сервере который мне нужен

Еще раз проверить в файле php.ini web-сервера apache установлены ли библиотеки cURL:
Раскоментирать строку
изменить
;extension=php_curl.dll
на
extension=php_curl.dll

И обязательно перезапустить web-сервер apache!



0



1 / 1 / 2

Регистрация: 22.09.2015

Сообщений: 65

08.02.2016, 09:59

 [ТС]

12

Цитата
Сообщение от Gcom
Посмотреть сообщение

Еще раз проверить в файле php.ini web-сервера apache установлены ли библиотеки cURL:
Раскоментирать строку
изменить
;extension=php_curl.dll
на
extension=php_curl.dll
И обязательно перезапустить web-сервер apache!

библиотека найдена, extension=php_curl.dll раскомменчен, apache перезапущен, но но функция curl_init() все также стабильно не найдена((((



0



82 / 82 / 18

Регистрация: 03.02.2016

Сообщений: 564

Записей в блоге: 1

08.02.2016, 10:03

13

Цитата
Сообщение от annie88
Посмотреть сообщение

библиотека найдена, extension=php_curl.dll раскомменчен, apache перезапущен, но но функция curl_init() все также стабильно не найдена((((

Тогда попробовать установить вручную, как это сделать человек писал выше:

Цитата
Сообщение от Xenox
Посмотреть сообщение

Вот ссылка почитайте. Попробуйте установить.
Еще ссылка



1



1 / 1 / 2

Регистрация: 22.09.2015

Сообщений: 65

08.02.2016, 11:52

 [ТС]

14

Ура!!!!
сделала так, как было предложено здесь и все сработало!



1



12 / 17 / 2

Регистрация: 02.11.2015

Сообщений: 222

03.02.2019, 16:10

15

Цитата
Сообщение от annie88
Посмотреть сообщение

Ура!!!!
сделала так, как было предложено здесь и все сработало!

Здорово! Но методы там конечно откровенно варварские, пусть даже они и рабочие.. Добавил своё видение в тему указанную в ссылке.. кто столкнулся с такой же проблемой, прошу обратить внимание



0



30 / 45 / 19

Регистрация: 18.07.2018

Сообщений: 578

03.02.2019, 16:50

16

Цитата
Сообщение от Eskander88
Посмотреть сообщение

варварские

сказал человек в теме о курле



0



  • #1

Добрый день. Это мой первый пост на данном ресурсе. Помогите, пожалуйста, решить проблему. Под Windows запущен Open Server (5.2.2) — PHP 5.5, Apache 2.4+Nginx 1.10, openSSL 1.0.2l. С помощью cURL отправляю запрос POST на https (сервер использует шифрование ГОСТ 2012):

Код:

$postData = array(
    "document" => ""
);
$myCurl = curl_init('https://.....');
curl_setopt_array($myCurl, array(
    CURLOPT_POST => TRUE,
    CURLOPT_RETURNTRANSFER => TRUE,
    CURLOPT_HTTPHEADER => array(
        'Accept: application/json',
        'Content-Type: application/json'
    ),
    CURLOPT_POSTFIELDS => json_encode($postData)
));

Приходит ответ от сервера: error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure

Пробовал так:

Код:

$postData = array(
    "document" => ""
);
$myCurl = curl_init('https://.....');
curl_setopt_array($myCurl, array(
    CURLOPT_SSLVERSION => CURL_SSLVERSION_TLSv1_0,
    CURLOPT_SSLCERT => путь к сертификату, использумый сервером,
    CURLOPT_POST => TRUE,
    CURLOPT_RETURNTRANSFER => TRUE,
    CURLOPT_HTTPHEADER => array(
        'Accept: application/json',
        'Content-Type: application/json'
    ),
    CURLOPT_POSTFIELDS => json_encode($postData)
));

Ответ от сервера: could not load PEM client certificate, OpenSSL error error:0609E09C:digital envelope routines:pKEY_SET_TYPE:unsupported algorithm, (no key found, wrong pass phrase, or wrong file format?)

Через Internet Explorer ошибок нет. Через Chrome — ошибка ERR_SSL_VERSION_OR_CIPHER_MISMATCH. В чем может быть проблема?

Последнее редактирование: 27 Май 2020

fixxxer


  • #2

сервер использует шифрование ГОСТ 2012

Очевидно, в этом.
Нужен openssl с поддержкой этого госта. Где его взять для винды — понятия не имею.

  • #3

Проверяйте openssl_get_cipher_methods()/openssl_get_md_methods(). И, да, если вам нужен GOST под Windows, скорее всего, придётся компилировать его самим.

  • #4

Скачал OpenSSL 1.1.1b — gost с поддержкой гост. Через конфиг подцепил gostengy.dll . При просмотре через консоль OpenSSL в ciphers появился GOST2012-GOST8912-GOST8912.

Как заставить php использовать эту версию OpenSSL ?

  • #5

Во-первых скачайте новую версию, 1.1.1b имеет известные критические уязвимости.

  • #6

Пока с поддержкой ГОСТ нашел только такую

fixxxer


  • #8

Установил Open Server на чистую винду. Выбрал модуль Apache 2.4+Nginx 1.17, PHP 7.2. В составе OpenSSL 1.1.1d. Попробовал тот же скрипт

Код:

$postData = array(
    "document" => ""
);
$myCurl = curl_init('https://.....');
curl_setopt_array($myCurl, array(
    CURLOPT_SSLVERSION => CURL_SSLVERSION_TLSv1_0,
    CURLOPT_CAINFO => путь к сертификату, использумый сервером,
    CURLOPT_CERTINFO => TRUE,
    CURLOPT_POST => TRUE,
    CURLOPT_RETURNTRANSFER => TRUE,
    CURLOPT_HTTPHEADER => array(
        'Accept: application/json',
        'Content-Type: application/json'
    ),
    CURLOPT_POSTFIELDS => json_encode($postData)
));

Все заработало, ответ от сервера пришел. В первых вариантах использовал CURLOPT_SSLCERT для указания пути к сертификату сервера. Понял ошибку — исправил на CURLOPT_CAINFO. Пробовал другие версии PHP в составе OpenServer — соединение устанавливается только если OpenSSL версия 1.1.0 или выше.

При этом openssl_get_cipher_methods() не показывает GOST вообще, а в openssl_get_md_methods() присутствует GOST 31.11-2012.

Сторонние dll для ГОСТ не подключал.

Последнее редактирование: 29 Май 2020

  • #9

Пробовал собрать PHP 5.5 через Visual Studio 2012. Визульно набор файлов в собранной версии сильно отличается от набора в составе OpenServer (думал просто заменю папку с PHP). Надо разбираться с конфигурацией во время сборки. Позже займусь этим вопросом.

  • #10

Может, уже собранный дистриб с php.net брать и вставлять в Open Server (только NTS-овость соблюсти)?

  • #11

Может, уже собранный дистриб с php.net брать и вставлять в Open Server (только NTS-овость соблюсти)?

Мне же php надо собрать с обновленным OpenSSL

Понравилась статья? Поделить с друзьями:

Читайте также:

  • Openvpn option error remote option not specified
  • Openvpn openssl error 1416f086
  • Openvpn incoming plaintext read error
  • Openvpn exited with error exit code 1 что это
  • Openvpn error self signed certificate in certificate chain

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии