web-dev-qa-db-ja.com

未定義の関数curl_init()エラーの呼び出し

私はWin64ビットOS、PHP5.6.8を使用してEclipsePDTを使用してPHPを開発しています。

この未定義関数への呼び出しcurl_init()エラーに遭遇しました。

php.ini;の前にあるextension=php_curl.dllを削除しました。Apacheサーバーを再起動しましたが、同じエラーが発生します。

私が間違っているところに何かヒントはありますか?

4
saurav

私は同じ問題を抱えていました、そして数時間後、私はここにメッセージを見つけました:

http://php.net/manual/curl.installation.php

「Windows7x64cURLでのphp5.6.9へのアップグレードは認識されなくなりました。サーバー起動パッケージでエラーが発生せず、phpinfo.phpに表示されませんでした。deplister.exeは問題ありませんでした。修正しました。 phpフォルダー(私の場合はD:\ xampp\php)から次のリストファイルをコピーするlibeay32.dlllibssh2.dllssleay32.dllからc:\xampp\Apache\bin(またはあなたのApache\binパス)、Apacheを再起動して正常に動作し、Apacheのライブラリは古くなっています。」

それは私のために働いた。

見つけるのは簡単ではありませんよね? :-)

20
nico

あなたの問題はおそらくすでに解決されています。しかし、まだ検索している人のために、ここで私の答えを見つけてください。

間違ったパスがポイントされている可能性があります

リンクでの私の答え( php7で有効になっている場合でも未定義の関数curl_init()を呼び出す )は次のように述べています。

ファイルパスが正しくない可能性があります

Apacheエラーログインを確認してください

/var/log/Apache2/error.log

呼び出されたパスまたはファイル名が実際のパスと一致する場合(例:.

/usr/lib/php/20151012/php_curl.so

私の場合、それは同じパスでしたが、「php_」がありませんでした

/usr/lib/php/20151012/curl.so

だから私はそれに応じてパス/ファイル名を変更しました

/etc/php/7.0/cli/conf.d/20-curl.ini 

から

extension=php_curl.so

extension=curl.so
3
leopold

PHP 7.2.4とApache2.4.33の両方がWindows10x64にインストールされている場合、同じエラーが発生しました:未定義の関数curl_init()を呼び出します。php.iniには拡張ディレクトリパスがあり、php_curl拡張が定義されています以前の回答からの提案を試しましたが、行きません。

My PHPの場所をシステムPATHに(C:\ phpとして)追加し、httpd(私の場合はApache2.4サービス)を再起動することで修正しました。

1
Sergey Zimin

PATH環境変数にphpフォルダパスを追加するだけです.....;)

1
Vipin Jain

2つのステップがあります:

  1. php.iniに移動し、行;(ウィンドウ内)の;extension=curlを削除します。 Linuxでは、curlを見つけてコメントを解除できます。
  2. インターネット3ファイルをダウンロードします:libeay32.dlllibssh2.dllssleay32.dll。そして{Apache Folder}/binに過去。次に、Apacheを再起動します。

必要に応じてこのリンクを参照できます https://www.php.net/manual/en/curl.installation.php

今は大丈夫です。

0
Tien Nguyen