Chuyển từ PHP 7.2 sang 7.1 trên Ubuntu 16.04, Apache


21

Tôi cần hạ cấp PHP trên một trong các máy ảo của tôi từ 7.2 xuống 7.1 trên Ubuntu 16.0.4. Lần cuối cùng tôi cố gắng loại bỏ chỉ PHP và thay thế nó bằng một phiên bản khác, tôi đã gặp tất cả các loại vấn đề với Apache và MySQL. Có cách nào nhanh chóng hạ cấp PHP từ 7.2 xuống 7.1 mà không phải cài đặt lại và định cấu hình đầy đủ Apache (phiên bản mới nhất khi viết bài này) và mọi thứ khác trên máy chủ không?

Tôi phải hạ cấp do thông tin xấu tôi nhận được từ một nhà cung cấp phần mềm tuyên bố ứng dụng của họ chạy trên PHP 7.2. Hóa ra nó phải có 7.1.

Tôi đã cố gắng tìm kiếm thông tin về cách hạ cấp từ 7.2 xuống 7.1, nhưng chỉ nhận được kết quả 'nâng cấp'.

Cảm ơn sự giúp đỡ của bạn.


1
Làm thế nào bạn có được PHP 7.2 để bắt đầu?
Michael Hampton

Cập nhật: Tôi đã từng sudo add-apt-repository ppa:ondrej/phpcài đặt PHP 7.2.x
Pegues

Câu trả lời:


35

Dưới đây là một mô tả về những gì tôi đã làm. Tôi hy vọng thông tin này có thể giúp người khác:

Tôi đã cài đặt PHP 7.1 cùng với PHP 7.2. Tôi cũng đã cài đặt hầu hết các phần mở rộng cần thiết cho PHP 7.1. Sau đó tôi đã làm a2dismod php7.2a2enmod php7.1để tôi có thể chuyển sang PHP 7.1 trong khi vẫn giữ 7.2 vẫn được cài đặt trên máy chủ. Hầu hết các trang web của tôi hoạt động sau khi thực hiện chuyển đổi. Trang web duy nhất dường như không hoạt động là một trang Joomla. Danh sách đầy đủ các lệnh tôi đã chạy dưới đây:

sudo add-apt-repository ppa:ondrej/php

sudo apt-get update

sudo apt-get install php7.1

sudo apt-get install php7.1-cli php7.1-common php7.1-json php7.1-opcache php7.1-mysql php7.1-mbstring php7.1-mcrypt php7.1-zip php7.1-fpm

sudo a2dismod php7.2

sudo a2enmod php7.1

sudo service apache2 restart

1
Tôi cũng ở trong tình trạng tương tự nhưng ngay cả sau khi tắt mô-đun 7.2, nếu tôi gõ php -v , nó vẫn hiển thị php7.2. Bất kỳ ý tưởng?
khichar.anil

1
Tôi cũng có điều tương tự. Mặc dù PHP 7.1 hiện đang được bật trên máy chủ của tôi, việc gõ php -vhiển thị PHP 7.2.2. Tuy nhiên, nếu tôi tải phpinfo()trong trình duyệt của mình, nó sẽ hiển thị phiên bản chính xác , 7.1.13. Bạn đã thử xem lại một tập tin với phpinfo()?
Chốt

Xem bình luận của tôi dưới đây. Nó sẽ thay đổi đường dẫn php mặc định.
khichar.anil

1
Một bài viết hữu ích tecadmin.net/switch-b between
CrandellWS

@CrandellWS cảm ơn bạn đã chia sẻ. Chắc chắn thông tin hữu ích.
Chốt

19

để hiển thị phiên bản php được kích hoạt trong terminal bằng php -v . chúng ta cần thiết lập bản cập nhật cli của php. sử dụng lệnh dưới đây để cập nhật phiên bản php cli

// change terminal (cli) version (7.2 to 7.1)
sudo update-alternatives --set php /usr/bin/php7.1

Điều này đã lừa
mistery_girl

12

@pegues: Phương pháp được đề cập ở trên của bạn hoạt động tốt để apache chuyển đổi phiên bản khác. Bằng cách chạy các lệnh sau cũng sẽ thay đổi php từ terminal. Thật ra bạn chỉ cần thay đổi symlink thành phiên bản PHP mong muốn.

sudo rm /usr/bin/php

sudo ln -s /usr/bin/php7.1 /usr/bin/php

1

Đây là những gì tôi đã làm:

sudo add-apt-repository ppa:ondrej/php

sudo apt-get update

sudo apt-get install php7.1

sudo apt-get install php7.1-cli php7.1-common php7.1-json php7.1-opcache php7.1-mysql php7.1-mbstring php7.1-mcrypt php7.1-zip php7.1-fpm

sudo rm /usr/bin/php

sudo ln -s /usr/bin/php7.1 /usr/bin/php

Và để xác nhận rằng bạn có php 7.1, hãy gõ lệnh sau

php --ini |grep Loaded

nó sẽ trả về phản hồi sau

Loaded Configuration File:         /etc/php/7.1/cli/php.ini

nếu bạn đang sử dụng laravel vì một số lý do thì hãy sửa đổi fpm.service của bạn để trỏ đến phiên bản 7.1 và sau đó khởi động lại nó

sudo systemctl restart php7.1-fpm.service

sudo service nginx restart
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.