PHP 7でext-curl拡張機能をインストールするにはどうすればよいですか?


190

このリポジトリを使用し PHP 7をインストールしましたが、実行しようとするとcomposer install、次のエラーが発生します。

  • [パッケージ] ext-curlが必要*->リクエストされたPHP拡張カールがシステムにありません。

PHP 5では、yumまたはapt-get install php5-curlコマンドを実行して簡単にインストールできますが、PHP 7に相当するものをインストールする方法がわかりません。

PHP 7にext-curlをインストールするにはどうすればよいですか?


3
最初にlibcurlをインストールします。yum install libcurl or apt-get install libcurl。その後、curlを使用してphp 7を構成し、./configure --with-curl最後にmake and install
Haridarshan

@Haridarshanはい、大丈夫ですが、それは不便です
NinoŠkopac

curlとその他の拡張機能を使用してphp 7をビルドしてインストールしました。develライブラリをインストールする必要がある場合もあります。
ハリダルシャン2016

回答:


445

まあ私はそれをインストールすることができました:

sudo apt-get install php-curl

私のシステムで。これにより、デフォルトのphpバージョンに依存する依存パッケージがインストールされます。

その後、Apacheを再起動します

sudo service apache2 restart

36
..そしてサービスを再起動します。sudo service apache2 restart
Sydwell

1
Apache Webサーバーバージョンを使用している場合のみ。もちろん、CLIバージョンの場合、Apacheを再起動する必要はありません
CommandZ

同様にgd2、xmlrpc、soapなど-すべての小文字のサフィックスが機能しました
msanjay

5
sudo service apache2 restartの代わりに、sudo service apache2 reload
sudip

これは実際にはAPTソースで利用可能なパッケージに依存します。まず、を使用してAPTパッケージを更新しますapt-get update。次にapt-get install php、タブを入力して2回押します。リスト全体を表示するかどうかを確認するメッセージが表示されますDisplay all n possibilities? (y or n):。ここで、Nは利用可能な可能性の数です。Yを押すと、利用可能なパッケージの長いリストが表示され、そこから目的のパッケージ名を見つけることができます。もちろん、リストが長い場合、これは少し面倒です。ただし、バージョンに基づいて絞り込むことはできます。
ロミオシエラ

98

してみてください

sudo apt-get install php7.0-curl

9
バージョン番号を明示的に必要としない場合は、指定しないでください。そうしないと、古いバージョンを誤ってインストールする可能性があります。
phil294

2
コードのみで「これを試してください」という回答はお勧めしません。単一の反対票を取得するのに非常に長い時間がかかったのには驚きました。
RamenChef 2016

2
私の場合、機能するバージョンを指定する必要がありました。これは、システムに複数のバージョンがインストールされていたためだと思います。
padawanTony 16

1
PHP 5.5 / 5.6からアップグレードする場合、バージョン番号を指定する必要があるようです。
AlexL 2017年

さらにsudo apt install curl、なぜそれがそうであるかを誰かが知っていなければなりませんでしたか?
Dheeraj 2017

25

「sudo apt-get install php-curl」コマンドが機能せずエラーが表示される場合curlをインストールする前にこのコードを実行する必要があります。

  • ステップ1-sudo add-apt-repository ppa:ondrej / php
  • step2-sudo apt-get update
  • ステップ3-sudo apt-get install php-curl
  • step4-sudoサービスapache2の再起動

1
なぜ人々がこれに反対票を投じたのかはわかりません。試してみてください。うまくいくかもしれません。
ビッググリーンアリゲーター

1
うん、それは動作します。ところで、ステップ3では実際に特定のphpバージョンを選択できます。
iliaz

1
時にはそれはあなたのPHPのバージョンを指定する必要があります。たとえば、step3 sudo apt-get install php7.1-curl psあなたは長い夜から私を救います!
ウラジミールCh

17

上記の解決策を試しましたが、うまくいきませんでした。同じ靴に他の人がいる場合に備えて、これは私がやったことです。次のコマンドでapt-getを更新しました

sudo add-apt-repository ppa:ondrej/php

これは私が使用していたバージョンのphpのphp curlでインストールしたもので、私のものだった

sudo apt-get install php7.1-curl

他の答えもまったく同じ結論に導きました。他の答えが自分の時間に正しかったNowの正解だとしましょう。これがUbuntu 18.04、Apache 2で動作することを確認します。これは、PHP7.2バージョンをロードしようとする単純な「php-curl」よりも望ましいです。ウェブサーバーを再起動することを忘れないでください。この後、phpInfo()はcAuthorをModule Authorsセクション(Sterling Hughes)のすぐ下に表示するために使用されていましたが、現在cURLには独自の非常に詳細なセクション(現在7.58.0)があります。
TonyG 2018年

あなたは本当のヒーローです
バークカヤ

これは受け入れられる答えになるはずです。投票数を増やした答えは私を助けませんでした。
MarceloAgimóvel18年

11

Magentoのインストール時に必要なすべてのPHP7拡張機能をインストールできます。Magentoのインストール時にエラーが発生する関連コマンドを使用するだけです。

sudo apt-get install php7.0-curl
sudo apt-get install php7.0-dom
sudo apt-get install php7.0-mcrypt
sudo apt-get install php7.0-simplexml
sudo apt-get install php7.0-spl
sudo apt-get install php7.0-xsl
sudo apt-get install php7.0-intl
sudo apt-get install php7.0-mbstring
sudo apt-get install php7.0-ctype
sudo apt-get install php7.0-hash
sudo apt-get install php7.0-openssl
sudo apt-get install php7.0-zip
sudo apt-get install php7.0-xmlwriter
sudo apt-get install php7.0-gd
sudo apt-get install php7.0-iconv

ありがとう!これがあなたを助けることを願っています


あなたの答えは何の価値も追加しません。
ステファンVierkant

回答に新しい情報は含まれていません。他の答えを見てください。
ステファンVierkant

3
カールを探している人はmcryptについて次の質問をする可能性が高いので、これは非常に良い答えです。などなど、すべてのものを用意しておくと非常に便利です。
TheKitMurkit 2018

5

まずサーバーにログインし、サーバーにインストールされているPHPのバージョンを確認します。

次に、次のコマンドを実行します。

sudo apt-get install php7.2-curl

sudo service apache2 restart

PHPのバージョン(php7.2)をPHPのバージョンに置き換えます。


2

PHP7.1を使用している場合(php -versionPHPバージョンを確認してください)

sudo apt-get install php7.1-curl

その後、Apacheを再起動します

sudo service apache2 restart

1
バージョン番号が明記されているので、私はこの回答を好みます。受け入れられた答えはあまり正確ではありません。
アーロン・リュー

2

私は、CURL拡張がインストールしながら、行方不明になったというエラーだのWebMail Liteと8をWAMP(Windowsのように)。

一部のPHPインストールフォルダー(7.1.26など)にのみ存在する必要なものを読んだlibeay32.dll後、WAMP PHPバージョンメニューで使用中のPHPバージョンを7.2.14から7.1.26に切り替えたところ、エラーが発生しました離れて。


CURLを機能させるには、これも行う必要がありました。(libeay32.dllをバージョン7.0.10から7.3.8フォルダーにコピーしようとしましたが、機能しませんでした。)このライブラリファイルが新しいphp 7.3.8インストールから欠落している理由がわかりません。
Stefan

1

php70w-commonをインストールします。

それが提供する、PHP-API、PHP-BZ2、PHPカレンダー、PHP-CTYPE、PHPカール、PHP-日付、PHP-EXIF、PHP-のFileInfo、PHPフィルタ、PHP-FTP、PHP-gettextの、PHP-GMPをphp-hash、php-iconv、php-json、php-libxml、php-openssl、php-pcre、php-pecl-Fileinfo、php-pecl-phar、php-pecl-zip、php-reflection、php-session、 PHP-SHMOP、PHP-SimpleXMLを、PHP-ソケット、PHP-SPL、PHP-トークナイザ、PHP-のZend-ABI、PHP-ZIP、PHP-ZLIB

https://webtatic.com/packages/php70/


6
'php-curl'のインストールで十分でした:-)
Stephan Vierkant

0

Windowsユーザー:

注:Win32ユーザーへの注意Windows環境でこのモジュールを有効にするには、libeay32.dllとssleay32.dll、またはOpenSSL 1.1以降のlibcrypto- .dllとlibssl- .dllがPATHに存在する必要があります。また、libssh2.dllがPATHに存在している必要があります。cURLサイトのlibcurl.dllは必要ありません。

https://www.php.net/manual/en/curl.installation.php

C:\ wamp \ bin \ php \ php7.1.15をPATHに追加します

すべてのサービスを再起動します


0

sudo apt-get install php-curl試してみるときに404またはエラーが発生した場合

sudo apt-get update

そしてもう一度試してください

sudo apt-get install php-curl

しかし、インストールされているバージョンに注意してください(私はphp7.3およびphp7.4-curlがインストールされているため、機能しません)。

じゃあ

sudo apt-get install php7.3-curl

最後に、apache2やphp-fpmなどのサービスを再起動したい場合があります。

sudo apache2 restart
sudo service php7.3-fpm restart

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

現在のphpのインストール済みモジュールリストにcurlがあるかどうかを確認します。

php -m

ここに画像の説明を入力してください


-2

あなたが得たらそれを試してください E: Unable to locate package {packageName}

sudo add-apt-repository main
sudo add-apt-repository universe
sudo add-apt-repository restricted
sudo add-apt-repository multiverse
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install php-curl

1
回答にあるように、非常に多くの反対票がありました。
ウラジミールCh
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.