Ext-curl uzantısını PHP 7 ile nasıl kurarım?


190

Bu repo kullanarak PHP 7 yükledim , ama çalıştırmaya çalıştığınızda composer install, bu hata veriyor:

  • [paket] ext-curl gerektirir * -> istenen PHP uzantısı curl sisteminizde eksik.

PHP 5 ile, yumveya apt-get install php5-curlkomutunu çalıştırarak kolayca yükleyebilirsiniz , ancak PHP 7 eşdeğerini nasıl yükleyeceğimi bulamıyorum.

PHP 7 için ext-curl'u nasıl kurarım?


3
önce libcurl yükleyin yani. yum install libcurl or apt-get install libcurl. Bundan sonra php ./configure --with-curl
7'nizi

@Haridarshan Yea tamam, ama bu elverişsiz
Nino Škopac

Ben curl ve diğer uzantısı ile php 7 inşa ve kurmak. Ayrıca devel kütüphanelerini de kurmanız gerekebilir.
Haridarshan

Yanıtlar:


445

Peki tarafından yükleyebildim:

sudo apt-get install php-curl

benim sistemimde. Bu, varsayılan php sürümüne bağlı olan bir bağımlılık paketi yükleyecektir.

Bundan sonra apache'yi yeniden başlatın

sudo service apache2 restart

36
..ve hizmeti yeniden başlatın. sudo service apache2 restart
Sydwell

1
Yalnızca apache web sunucusu sürümünü kullanıyorsanız. Elbette CLI sürümü için
apache'yi

benzer şekilde gd2, xmlrpc, sabun, vb - tüm küçük harfler eki çalıştı
msanjay

5
Sudo

Bu aslında APT kaynaklarında bulunan paketlere bağlıdır. İlk olarak, kullanarak APT paketlerini güncelleyin apt-get update. Ardından apt-get install phpsekmeyi iki kez yazın ve basın. Tüm listeyi görüntülemek için Display all n possibilities? (y or n):, N'nin kullanılabilir olasılık sayısı olduğu gibi bir onay istenecektir . Y tuşuna bastığınızda, istediğiniz paket adını bulabileceğiniz uzun bir paket listesi elde edersiniz. Elbette, uzun bir listeniz varsa, bu biraz sıkıcı olacaktır. Ama yine de sürüme göre daraltabilirsiniz.
Romeo Sierra

98

deneyin lütfen

sudo apt-get install php7.0-curl

9
açıkça ihtiyacınız yoksa sürüm numarasını belirtmemelisiniz. aksi takdirde yanlışlıkla eski bir sürüm kurabilirsiniz.
phil294

2
Yalnızca kod ve "bunu dene" yanıtları önerilmez. Tek bir downvote almanın çok uzun sürdüğüne şaşırdım.
RamenChef

2
Benim durumumda, çalışması için sürümü belirtmek zorunda kaldım. Sanırım bunun nedeni, sistemime birden fazla sürümün yüklü olmasıydı.
padawanTony

1
PHP 5.5 / 5.6'dan yükseltme yapıyorsanız sürüm numarasını belirtmeniz gerekiyor gibi görünüyor.
AlexL

Bunun sudo apt install curlneden böyle olduğunu bilen var mı?
Dheeraj

25

Eğer "sudo apt-get install php-curl" komutu çalışmaz ve hata görüntülerse Curl'u yüklemeden önce bu kodu çalıştırmalıyız.

  • step1 - sudo add-apt-repository ppa: ondrej / php
  • step2 - sudo uygun-güncelleme
  • step3 - sudo uygun-get install php-curl
  • step4 - sudo service apache2 yeniden başlatma

1
İnsanların bunu neden düşürdüğünü bilmiyorum, bir deneyin, işe yarayabilir.
Büyük Yeşil Timsah

1
Evet, işe yarıyor. BTW 3. adımda aslında belirli bir php sürümünü seçebilirsiniz.
iliaz

1
bazen sizin php sürümünü belirtmek gerekir. örneğin: step3 sudo apt-get install php7.1-curl ps beni uzun bir geceden kurtar!
Vladimir Ch

17

Yukarıdaki çözümleri denedim ama benim için işe yaramadı, sadece aynı ayakkabılarda başka bir kişi varsa, ben de öyle yaptım. Apt-get komutunu aşağıdaki komutla güncelledim

sudo add-apt-repository ppa:ondrej/php

Bu ben kullanmak php sürümü için php kıvırmak ile yüklü, benim oldu

sudo apt-get install php7.1-curl

Diğer cevaplar beni aynı sonuca götürdü. Diğer cevapların kendi zamanları için doğru olduğu Şimdi için doğru olduğunu varsayalım. Bunun Ubuntu 18.04, Apache 2 için çalıştığını doğrulayacağım. Bu, PHP7.2 sürümünü yüklemeye çalışan basit "php-curl" için tercih edilir, burada (benim için) 7.1 kullanmaya devam etmek istiyorum. Web sunucusunu yeniden başlatmayı unutmayın. Bundan sonra, phpinfo () cURL'u Modül Yazarları bölümünün (Sterling Hughes) hemen altında gösterirken, şimdi cURL'nin şu anda 7.58.0'da olan çok ayrıntılı bir bölümü var.
TonyG

sen gerçek kahramansın
Berk Kaya

Bu kabul edilen cevap olmalı. Daha fazla oy içeren cevap bana yardımcı olmadı.
Marcelo Agimóvel

11

Magento'nun yüklenmesi sırasında ihtiyaç duyduğumuz PHP7 Uzantılarını kurabiliriz, Magento'nun kurulumu sırasında hata aldığınız ilgili komutu kullanın.

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

Teşekkürler! Umarım bu sana yardımcı olur


Cevabınız hiçbir değer katmıyor.
Stephan Vierkant

Cevabınız yeni bilgi içermiyor. Lütfen diğer cevaplara bakınız.
Stephan Vierkant

3
Bu çok iyi bir cevaptır, çünkü curl arayan kişinin muhtemelen mcrypt hakkındaki aklında bir sonraki soru olacaktır. Ve böylece, her şeyin orada olması çok faydalıdır.
TheKitMurkit

5

Önce sunucunuza giriş yapın ve sunucunuzda yüklü olan PHP sürümünü kontrol edin.

Ve sonra aşağıdaki komutları çalıştırın:

sudo apt-get install php7.2-curl

sudo service apache2 restart

PHP sürümünü (php7.2) PHP sürümünüzle değiştirin.


2

PHP7.1 kullanıyorsanız ( php -versionPHP sürümünüzü bulmaya çalışın )

sudo apt-get install php7.1-curl

sonra apache'yi yeniden başlat

sudo service apache2 restart

1
Sürüm numarasını belirttiği için bu yanıtı tercih ediyorum. Kabul edilen cevap çok doğru değil.
Aaron Liu

2

Ben CURL eklentisi yüklerken ederken eksikti bir hata var WebMail Lite 8 üzerinde WAMP (böylece Windows üzerinde).

Sadece bazı PHP kurulum klasörlerinde (7.1.26 gibi) mevcut olan gerekli okuduktanlibeay32.dll sonra , WAMP PHP sürüm menüsünde kullanılan PHP sürümünü 7.2.14'ten 7.1.26'ya değiştirdim ve hata gitti uzakta.


CURL'nin çalışması için bunu da yapmak zorundaydım. (Libeay32.dll dosyasını 7.0.10 sürümünden 7.3.8 klasörüne kopyalamayı denedim, ancak işe yaramadı.) Bu kütüphane dosyasının neden yeni php 7.3.8 kurulumunda eksik olduğundan emin değilim.
Stefan

1

php70w-common yükleyin .

Sağladığı , php-api, php-bz2, php-takvim, php-CTYPE, php-kıvırma, php-tarih, php-exif, php-FileInfo, php-filtre, 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-yansıma, php-session, php-shmop, php-simpleksml, php-soketler, php-spl, php-tokenizer, php-zend-abi, php-zip, php-zlib .

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


6
'Php-curl' kurmak yeterliydi :-)
Stephan Vierkant

0

Windows kullanıcıları:

Not: Win32 Kullanıcılarına Not Bu modülü Windows ortamında etkinleştirmek için, PATea'nızda libeay32.dll ve ssleay32.dll veya OpenSSL 1.1 libcrypto- .dll ve libssl- .dll dosyası bulunmalıdır. Ayrıca libssh2.dll PATH içinde olmalıdır. CURL sitesinden libcurl.dll dosyasına ihtiyacınız yoktur.

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

C: \ wamp \ bin \ php \ php7.1.15 kodunuzu PATH'nize ekleyin

Tüm hizmetleri yeniden başlat


0

sudo apt-get install php-curlSadece denerken 404 veya hatalarınız varsa

sudo apt-get update

ve tekrar dene

sudo apt-get install php-curl

Ama hangi sürümün yüklü olduğuna dikkat edin (php7.3 kullanıyorum ve php7.4-curl kuruldu - bu yüzden çalışmaz)

o zaman dene

sudo apt-get install php7.3-curl

Sonunda apache2 veya php-fpm gibi hizmetleri yeniden başlatmak isteyebilirsiniz:

sudo apache2 restart
sudo service php7.3-fpm restart

bu benim için çalıştı.

Geçerli php için curl'un yüklü modüller listesinde olup olmadığını kontrol edin:

php -m

resim açıklamasını buraya girin


-2

Eğer alırsan dene 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
pek çok downvotes, cevap Bijaya Kumar Oli olduğu gibi bu çözüm çalıştı!
Vladimir Ch
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.