Làm cách nào để cài đặt tất cả các mô-đun PHP trên CentOS?

Cài đặt mặc định của PHP như được mô tả trong Cài đặt PHP sẽ cài đặt các mô-đun PHP sau

[root@websrv ~]# php -m
[PHP Modules]
bz2
calendar
Core
ctype
curl
date
ereg
exif
fileinfo
filter
ftp
gettext
gmp
hash
iconv
json
libxml
mysql
mysqli
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_sqlite
Phar
readline
Reflection
session
shmop
SimpleXML
sockets
SPL
sqlite3
standard
tokenizer
xml
zip
zlib

Đó là khá nhiều mô-đun, nhờ có php-common, nhưng các trang web khác nhau thường cần cài đặt các mô-đun khác nhau và có một số cách để cài đặt chúng

Phương pháp quản lý gói

Trong ví dụ bên dưới, chúng tôi sẽ cài đặt tiện ích mở rộng SOAP bằng trình quản lý gói mặc định của hệ thống, yum

Sau khi sử dụng php -m như trên, chúng ta có thể thấy rằng SOAP không có trong danh sách

Để cài đặt, sử dụng lệnh sau

Định dạng của lệnh đó có thể được thay đổi để cài đặt các mô-đun khác nhau, vì vậy bạn có thể cài đặt imap hoặc snmp bằng các lệnh sau

Sau khi bạn chấp nhận điều này, quá trình cài đặt sẽ chạy và bạn có thể chạy lại php -m để xác nhận rằng mô-đun hiện có trong danh sách

Cần khởi động lại máy chủ web của bạn để tải mô-đun mới này trước khi máy chủ web của bạn có thể truy cập nó

PECL

Một số mô-đun có thể không có sẵn trong kho tiêu chuẩn của bạn, nhưng đừng lo. Miễn là bạn đã cài đặt gói php-pear, bạn sẽ có quyền truy cập vào php-common0 và php-common1, giống như trình quản lý gói đặc biệt dành cho PHP

Trong ví dụ này, chúng tôi sẽ cài đặt mô-đun Memcached cho PHP

Lệnh để bắt đầu tất cả là

Ghi chú

Sử dụng pecl thường sẽ cần bạn cài đặt một số phụ thuộc

Những cái nào sẽ phụ thuộc vào những gì đã được cài đặt trên hệ thống của bạn, nhưng trong ví dụ trên về cài đặt tối thiểu CentOS, tôi phải cài đặt php-common2, php-common3 và php-common4

Cài đặt PECL thường hỏi một số câu hỏi trong quá trình cài đặt. Nếu bạn không chắc chắn nên đặt gì, nhấn enter sẽ chấp nhận giá trị mặc định

Khi điều này kết thúc, bạn sẽ phải cho PHP biết nơi nó có thể tìm thấy mô-đun mới, vì văn bản hoàn thành sẽ cho bạn biết

Trong ví dụ Memcached, dòng sau cần được thêm vào cấu hình PHP của bạn

Điều này chỉ có thể được thêm vào dưới cùng của php-common5, nhưng để giữ cho mọi thứ gọn gàng, tôi đã chọn đặt nó vào tệp sau

Tệp có thể sẽ không tồn tại và bạn có thể gọi nó là gì bạn muốn miễn là nó kết thúc bằng php-common6

Sau khi bạn hoàn thành việc này, quá trình cài đặt sẽ chạy và bạn có thể chạy lại php -m để xác nhận rằng mô-đun hiện có trong danh sách

Cần khởi động lại máy chủ web của bạn để tải mô-đun mới này trước khi máy chủ web của bạn có thể truy cập nó

Phần này cung cấp ví dụ hướng dẫn về cách thêm tiện ích mở rộng PHP trên hệ thống CentOS Linux bằng cách tìm kiếm và cài đặt tiện ích mở rộng bằng trình quản lý gói 'dnf'

PHP có nhiều tiện ích mở rộng. Một số trong số chúng được cài đặt sẵn và một số thì không. Nếu bạn gặp lỗi như "Lớp. không tìm thấy" hoặc "Gọi đến chức năng không xác định. ", bạn cần cài đặt tiện ích mở rộng cung cấp lớp hoặc chức năng còn thiếu

Ví dụ: khi tôi kiểm tra một ứng dụng Web mới trên hệ thống CentOS của mình, tôi thấy lỗi này. Tôi biết rằng tôi cần cài đặt tiện ích mở rộng ZIP

Phần này cung cấp một ví dụ hướng dẫn về cách tìm kiếm và cài đặt các mô-đun PHP bổ sung trên các hệ thống CentOS 8 bằng cách sử dụng 'dnf/yum' làm trình quản lý gói

Nếu bạn đang phát triển một ứng dụng Web sử dụng tập lệnh PHP, bạn có thể cần cài đặt các mô-đun PHP bổ sung như trong hướng dẫn này

1. Cài đặt gói php-json, nếu bạn thấy lỗi "Gọi hàm không xác định json_decode()"

herong$ test-script.php
Call to undefined function json_decode()

herong$ sudo yum search php | grep json
php-json.x86_64 : JavaScript Object Notation extension for PHP
...

herong$ sudo dnf install php-json
...
Installed:
  php-json-7.2.11-2.module_el8.1.0+209+03b9a8ff.x86_64

Complete!

2. Cài đặt gói php-mbstring, nếu bạn thấy lỗi "Gọi hàm không xác định mb_internal_encoding()"

herong$ test-script.php
Call to undefined function mb_internal_encoding()

herong$ sudo yum search php | grep mb
php-embedded.x86_64 : PHP library for embedding in applications
php-mbstring.x86_64 : A module for PHP applications which need
   multi-byte string

herong$ sudo dnf install php-mbstring
...
Installed:
  php-mbstring-7.2.11-2.module_el8.1.0+209+03b9a8ff.x86_64

Complete!

3. Cài đặt gói php-mysqlnd, nếu bạn thấy lỗi "Gọi hàm không xác định mysqli_connect()"

herong$ test-script.php
Call to undefined function mysqli_connect

herong$ sudo yum search php | grep mysql
php-mysqlnd.x86_64 : A module for PHP applications that use MySQL databases

herong$ sudo dnf install php-mysqlnd

Installed:
  php-mysqlnd-7.2.11-2.module_el8.1.0+209+03b9a8ff.x86_64
  php-pdo-7.2.11-2.module_el8.1.0+209+03b9a8ff.x86_64

Complete!

Nếu bạn thấy nhiều lỗi hơn về các chức năng không xác định, bạn có thể tiếp tục tìm kiếm và cài đặt các mô-đun PHP bổ sung bằng lệnh "yum"

Làm cách nào để cài đặt tất cả các mô-đun trong PHP?

Làm theo các bước sau để cài đặt nó. .
Cài đặt gói sau. cập nhật sudo apt-get sudo apt-get cài đặt -y autoconf
Kích hoạt mô-đun trong /opt/bitnami/php/etc/php. ini bằng cách thêm dòng này vào cuối. tiện ích mở rộng = redis. vì thế
Kiểm tra xem mô-đun đã được cài đặt đúng chưa bằng lệnh sau. php -m. grep redis

Làm cách nào để kích hoạt các mô-đun PHP trong CentOS?

Bật PHP fpm cho nginx .
Bắt đầu dịch vụ PHP fpm. $ Sudo systemctl bắt đầu php72-php-fpm. Dịch vụ
Dừng dịch vụ PHP fpm. $ Sudo systemctl dừng php72-php-fpm. Dịch vụ
Khởi động lại dịch vụ PHP fpm. $ Sudo systemctl khởi động lại php72-php-fpm. Dịch vụ
Nhận trạng thái của dịch vụ PHP fpm. $ Sudo systemctl status php72-php-fpm. Dịch vụ

Làm cách nào để cài đặt các mô-đun PHP trong CentOS 8?

Cách cài đặt PHP 7. .
Mở ứng dụng đầu cuối và đăng nhập vào máy chủ CentOS 8 từ xa
Cập nhật hộp CentOS 8, chạy cập nhật sudo yum
Tìm kiếm phiên bản PHP, chạy sudo yum search php
Cài đặt PHP 7. 2. 11 hoặc 7. 4 và mô-đun FastCGI cho Nginx trên CentOS 8, thực thi. sudo yum cài đặt php php-fpm
Định cấu hình Nginx để sử dụng PHP

Làm cách nào để cài đặt nhiều phiên bản PHP CentOS 7?

Chạy nhiều phiên bản PHP trên cùng một máy chủ .
Bước 1 Cài đặt các gói cần thiết. Chạy Lệnh đã cho để cài đặt từng gói. .
Bước 2 Cài đặt PHP nhiều phiên bản. .
Bước 3 Dừng cả PHP-FPM. .
bước 4 Định cấu hình PHP-FPM. .
Bước 5 Cấu hình SELinux. .
Bước 6 Tạo trình bao bọc tập lệnh. .
Bước 7 Định cấu hình Apache. .
Bước 8 Bắt đầu/Kích hoạt Dịch vụ