ฉันจะติดตั้ง PHP รุ่นต่าง ๆ (อัพเกรดหรือดาวน์เกรด) ในยังรองรับ Ubuntu ได้อย่างไร


226

ฉันพยายามอัปเดตเพื่อติดตั้ง PHP 5.5, 5.6 หรือ 7.0 ใน Ubuntu 12.04 / 14.04 / 16.04 LTS และฉันจะได้รับ PHP 5.3.10 สำหรับ Ubuntu 12.04, PHP 5.5.9 สำหรับ Ubuntu 14.04 หรือ PHP 7.0.4 สำหรับ Ubuntu 16.04 ใช้ repositories อย่างเป็นทางการ (ใช้ apt-get)

ฉันไม่แน่ใจจริงๆว่าจะทำการอัพเดทด้วยตนเองอย่างไร - ตามที่ฉันต้องการ:

  • เพื่อเล่นกับฟีเจอร์ PHP ใหม่ (est)
  • เพื่อติดตั้งการรองรับ PHP เวอร์ชันเก่ากว่าในซอฟต์แวร์

1
ถ้า sudo apt-get upgrade ไม่ต้องอัพเกรด PHP ลอง ​​sudo apt-get dist-upgrade สำหรับการอัพเกรดการกระจาย
Moiz Kiyani

คำตอบ:


292

คุณสามารถใช้ PPA เพื่อรับข้อมูลล่าสุดเกี่ยวกับ PHP หรือติดตั้ง PHP รุ่นก่อนหน้า (fe PHP 5.6 บน Ubuntu 16.04 LTS)

แหล่งเก็บข้อมูลที่ใช้กันอย่างแพร่หลายมาจากOndřejSurýผู้ดูแล PHP Debian:

  • ppa: ondrej / phpโลโก้ Launchpad (สำหรับ PHP 5.6 / 7.0 / 7.1 เวอร์ชันที่ติดตั้งร่วมได้จะไม่รองรับ PHP 5.5)

แพ็คเกจที่รองรับ php5:

  • ppa: ondrej / php5-compatโลโก้ Launchpad (สำหรับหุ่นจำลองphp5เพื่อตอบสนองการพึ่งพาในแพ็คเกจเก่า)

( คลิกที่นี่เพื่อดูคำแนะนำเกี่ยวกับการใช้ PPA )

PHP PPAs ก่อนหน้านี้มีการอัพเดต Apache 2.4 นี่ไม่ใช่กรณีอีกต่อไปคุณต้องเพิ่มที่เก็บ Apache 2.4 แยก:

หากคุณต้องการใช้ PPA เหล่านี้ให้ทำสิ่งนี้:

ppa: ondrej / phpโลโก้ Launchpad (สำหรับ PHP 5.6 / 7.0 / 7.1)

sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install php7.1   # for PHP 7.1
sudo apt-get install php7.0   # for PHP 7.0
sudo apt-get install php5.6   # for PHP 5.6

หากต้องการสลับระหว่างเวอร์ชันที่ติดตั้งให้ใช้

sudo update-alternatives --config php

จากนั้นคุณต้องตั้งค่า Apache ให้ทำงานกับเวอร์ชันที่ถูกต้อง:

sudo a2dismod php7.1         # unload the current version
sudo a2enmod  php5.6         # load the version you need
sudo service apache2 restart # restart webserver to apply

ppa: ondrej / php5-compatโลโก้ Launchpad (สำหรับ php5 compat)

sudo add-apt-repository ppa:ondrej/php
sudo add-apt-repository ppa:ondrej/php5-compat
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install php5 # this will pull php5.6 package 

หากคุณไม่มีadd-apt-repositoryเลขฐานสองให้ทำดังนี้:

sudo apt-get install python-software-properties

ข้อควรระวัง:

PHP 5.4

มีการบรรจุ PHP 5.4 ล่าสุดไว้ล่วงหน้าในตอนนี้โดยแยก PPA: ppa: ondrej / php5-oldstableโลโก้ Launchpad

โปรดทราบว่า PHP 5.4 ได้สิ้นสุดลงในวันที่3 กันยายน 2558และไม่ได้รับการอัปเดตความปลอดภัยใด ๆ ก็แนะนำให้โยกย้ายไปอย่างน้อย PHP 5.6 ที่จะได้รับการรักษาความปลอดภัยการปรับปรุงจนถึงวันที่ 31 ธันวาคม 2018


5
ปรากฎว่าคุณต้องวิ่งsudo apt-get updateก่อน!
kavisiegel

3
มีแพ็คเกจ php5-cli สำหรับสิ่งนั้น!
matteosister

11
หลังจากเพิ่ม ppa คุณสามารถทำได้: sudo apt-get dist-upgrade
matteosister

2
หลังจากติดตั้ง ppa การอัพเกรด php และการทำงานphp -vข้อมูลเวอร์ชันเริ่มต้นด้วยข้อความแสดงข้อผิดพลาด: การโหลด /usr/lib/php5/20090626/xdebug.so ล้มเหลว: /usr/lib/php5/20090626/xdebug.so: ไม่สามารถเปิดการแชร์ได้ วัตถุไฟล์: ไม่มีไฟล์หรือไดเรกทอรีที่น่ารำคาญ
systemovich

3
ใช้apt-get install software-properties-commonถ้าapt-get install python-software-propertiesไม่มีadd-apt-repositoryคำสั่ง
Meetai.com

3

จะใช้เวลาสักครู่สำหรับแพ็คเกจ PHP 5.4 เพื่อเข้าสู่ Ubuntu เนื่องจากมีการตรวจสอบจำนวนมากที่ต้องทำ Ubuntu 12.04 เป็นรุ่นเบต้าดังนั้นฉันสงสัยว่าพวกเขาจะอัปเกรดเป็น PHP 5.4 (แม้ว่าฉันจะไม่มีความรู้อย่างเป็นทางการหรือเป็นภายใน) - มันอาจจะไม่ปรากฏจนกว่า Ubuntu 12.10 ในเดือนตุลาคมปีนี้ ถ้าคุณต้องการมันเร็วกว่านั้นคุณจะต้องหาแพ็คเกจของบุคคลที่สามหรือเรียนรู้ที่จะสร้างมันเองจากซอร์สโค้ด

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