วิธีการเปิดใช้งาน curl, Ubuntu LAMP stack ที่ติดตั้งแล้ว?


216

ฉันติดตั้ง ubuntu Lamp stack แล้ว แต่ไม่ได้เปิดใช้งาน curl ฉันไม่สามารถหาส่วนขยายที่แสดงในไฟล์ INI ได้ ฉันเพิ่มด้วยตนเอง แต่มันก็ไม่ทำงานเหมือนกัน

ฉันจะเปิดใช้งาน Curl อย่างไร


18
sudo apt-get install php5 ขดแม้ว่าคุณควรอยู่คำถามนี้ ServerFault
Eineki

ข้างต้นไม่ได้ผลด้วย
Arshdeep

2
พบคำตอบได้ที่นี่เช่นกัน: askubuntu.com/questions/9293/how-do-i-install-curl-in-php5
chrisjlee

คำตอบ:


425

จากhttp://buzznol.blogspot.com/2008/12/install-curl-extension-for-php-in.html :

sudo apt-get install php5-curl

หลังจากติดตั้ง libcurl คุณควรรีสตาร์ทเว็บเซิร์ฟเวอร์ด้วยคำสั่งอย่างใดอย่างหนึ่งต่อไปนี้

sudo /etc/init.d/apache2 restart หรือ sudo service apache2 restart


79
@Arsheep "ไม่ทำงาน" ไม่มีประโยชน์เหลือเกิน มันทำให้คุณมีข้อผิดพลาดหรือไม่? คอมพิวเตอร์ของคุณระเบิดหรือไม่ บ้านของคุณลุกเป็นไฟไหม?
Michael Mrozek

2
ไม่มีข้อผิดพลาดและไม่มีมนุษย์ไฟมันติดตั้งเรียบร้อยแล้วฉันรีสตาร์ท Apache และลองรหัส curl อีกครั้ง แต่ข้อผิดพลาดเดียวกันอีกครั้ง "Call to undefined ฟังก์ชัน curl_init ()"
Arshdeep

6
sudo apt-get update -y && sudo apt-get install -y php5-curl
jay

7
คุณจะต้องติดตั้ง php5-curl ... ส่วนที่เหลือไม่จำเป็นต้องเปิดใช้งาน curl ใน PHP ฉันไม่ต้องรีสตาร์ท Apache เพื่อให้การเปลี่ยนแปลงมีผล
Xethron

2
คำตอบนี้เก่าเช่น ubunto 14.10 ตอนนี้เปลี่ยนการพึ่งพา libcurl3 เป็น libcur4 นี่คือสิ่งที่ฉันใช้ประสบความสำเร็จ (มันดึงการอ้างอิงอีกสองสามครั้งเพราะนี่เป็นการติดตั้งครั้งแรกสำหรับฉัน):sudo apt-get install curl libcurl4-openssl-dev php5-curl php5-cli
moodboom

124

คุณต้องติดตั้งไลบรารี php5-curl เท่านั้น คุณสามารถทำได้โดยการเรียกใช้

sudo apt-get install php5-curl

คลิกที่นี่สำหรับข้อมูลเพิ่มเติม


17
@EdC ในความคิดของฉันนี้เป็นคำตอบที่ดีกว่ายอมรับเพราะมันเพียงพอที่จะติดตั้ง php5-curl ไม่จำเป็นสำหรับคนอื่น ๆ
István Ujj-Mészáros

9
นี่คือคำตอบที่ดีกว่า ... ง่ายขึ้นและไม่จำเป็นต้องรีสตาร์ทเว็บเซิร์ฟเวอร์เพราะ apt-get ทำเพื่อคุณ
mblackwell8 8

1
นอกจากนี้คุณต้องรีสตาร์ท Apache หลังจากคำสั่งนี้ใช้sudo service apache2 restart
FloatingRock

1
@ mblackwell8 ฉันลองแล้วและคุณต้องรีสตาร์ทเว็บเซิร์ฟเวอร์หลังจากใช้คำสั่งเพื่อให้มันทำงานได้
FloatingRock

ถูกต้องจำเป็นต้องรีสตาร์ท apache ... FYI คุณสามารถป้อน: sudo /etc/init.d/apache2 เริ่มต้นใหม่ (แทน 'sudo service apache2 restart) ... แม้ว่าวิธีการทางเลือกนี้ที่ฉันพูดถึงต้องมีไดเรกทอรีของคุณไม่เปลี่ยนแปลง ตามที่ระบุเส้นทางแบบคงที่ ฉันใช้สิ่งที่กล่าวถึงโดย Yazin
josh.thomson

23

ลองใช้ sudo apt-get install php-curlงานกับ Ubuntu 16.04 LTS ที่สดใหม่พร้อม lamp-server และ php7 ฉันพยายามด้วยphp7-curl- ไม่ทำงานและก็ไม่ได้ทำงานด้วยphp5-curl


1
งานนี้ใช้ได้ดีกับฉันอย่างสมบูรณ์ ฉันใช้ PHP7 แต่ฉันใช้คำสั่งโดยไม่มีหมายเลขเวอร์ชันและใช้งานได้ดีมาก ขอบคุณ
Lynnell Emmanuel Neri

19

สำหรับผู้ที่พยายามติดตั้ง php-curl บน PHP 7 จะได้รับข้อผิดพลาด จริง ๆ แล้วถ้าคุณกำลังติดตั้ง php-curl ใน PHP 7 ชื่อแพ็คเกจควรเป็น;

sudo apt-get install php-curl

ไม่php5-curlหรือเพียงphp7-curlphp-curl


15

สิ่งแรกที่ต้องทำ: ตรวจสอบ PHP Vesion ที่เครื่องของคุณกำลังทำงาน

บรรทัดคำสั่ง :php -version

สิ่งนี้จะแสดงสิ่งนี้ (ในกรณีของฉัน):

PHP 7.0.8-0ubuntu0.16.04.3 (cli) (NTS) ลิขสิทธิ์ (c) 1997-2016 The PHP Group

ถ้า: คุณใช้ PHP 5.xx => คำสั่ง run: sudo apt-get install php5-curl

ถ้า: PHP 7.xx => เรียกใช้คำสั่ง (ในกรณีที่อาจ): sudo apt-get install php7.0-curl

เปิดใช้งานส่วนขยายนี้โดยการเรียกใช้:

sudo gedit /etc/php/7.0/cli/php.ini

และในไฟล์ "php.ini": ค้นหาคำหลัก "curl" เพื่อค้นหาบรรทัดนี้ด้านล่างและเปลี่ยนจาก

; นามสกุล = php_curl.dll

ถึง:

ขยาย = php_curl.dll

ถัดไปบันทึกไฟล์ "php.ini"

sudo service apache2 restartสุดท้ายในบรรทัดคำสั่งของคุณเริ่มต้นเซิร์ฟเวอร์ของคุณโดยใช้:


4

ดำเนินการตามคำสั่งด้านล่างเพื่อให้รายการของโมดูล

 sudo apt-cache search php5-

จากนั้นไฟล์ fire ด้านล่างคำสั่งพร้อมชื่อโมดูลที่จะติดตั้ง

 sudo apt-get install name of the module

สำหรับลิงค์อ้างอิง


2

ฉันพยายามข้างต้นส่วนใหญ่ แต่มันไม่ได้ผลสำหรับเครื่องของฉัน Ubuntu 18.04 แต่สิ่งที่ได้ผลสำหรับฉันคือสิ่งนี้

ก่อน: ตรวจสอบเวอร์ชัน php ของคุณ

$ php-version

ที่สอง: เพิ่มรุ่น php ของคุณลงในคำสั่งของฉันคือ

  $ sudo apt-get install php7.2-curl

รีสตาร์ทเซิร์ฟเวอร์ apache ครั้งสุดท้าย

sudo service apache2 restart

แม้ว่าคนส่วนใหญ่อ้างว่าไม่จำเป็นต้องรีสตาร์ท apache :) ขอบคุณ


1

ไม่ต้องให้หมายเลขรุ่น เพียงเรียกใช้ sudo apt-get install php-curl มันใช้งานได้สำหรับฉัน อย่าลืมรีสตาร์ทเซิร์ฟเวอร์ sudo service apache2 เริ่มต้นใหม่


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.