Hướng dẫn install php fileinfo extension centos 7 - cài đặt phần mở rộng php fileinfo centos 7

Có vẻ như tiện ích mở rộng FileInfo không thể được cài đặt cho Php 8.x trong Centos 7, bây giờ thì sao?

Trong những ngày cuối cùng, thử nghiệm Magento 2 được xử lý bởi một bảng lưu trữ web mới mà tôi phát hiện ra gần đây, cụ thể là Aapanel, tôi đã tìm thấy một trong những lỗi đó sẽ khiến nhà phát triển phải hét lên trong nhiều ngày. Tôi đã cài đặt 2 phiên bản PHP, 7.4 và 8.1 và cố gắng cài đặt các phụ thuộc của dự án Magento thông qua trình soạn thảo với cài đặt trình soạn thảo đơn giản (sử dụng PHP 8.1 trong CLI). Việc cài đặt đã đưa ra các ngoại lệ sau:

Problem 1                                                                                                                                                                                                            
- league/mime-type-detection is locked to version 1.11.0 and an update of this package was not requested.                                                                                                         - league/mime-type-detection 1.11.0 requires ext-fileinfo * -> it is missing from your system. Install or enable PHP's fileinfo extension.

Problem 2

- league/mime-type-detection 1.11.0 requires ext-fileinfo * -> it is missing from your system. Install or enable PHP's fileinfo extension.
- league/flysystem-aws-s3-v3 2.4.3 requires league/mime-type-detection ^1.0.0 -> satisfiable by league/mime-type-detection[1.11.0].
- league/flysystem-aws-s3-v3 is locked to version 2.4.3 and an update of this package was not requested.

Sau khi nhận thấy rằng phần mở rộng ext-fileinfo của PHP 8.1 không được cài đặt, tôi đã tiến hành cài đặt nó thông qua cửa hàng phần mềm của AAPANEL (AAPANEL này thực sự giúp mọi thứ dễ dàng thực hiện) với một cú nhấp chuột đơn giản:

Hướng dẫn install php fileinfo extension centos 7 - cài đặt phần mở rộng php fileinfo centos 7

Tuy nhiên, việc cài đặt dường như bắt đầu nhưng chưa bao giờ kết thúc, quá trình đã chết và phần mở rộng không bao giờ xuất hiện như được cài đặt trong PHP 8.1 (bất cứ điều gì bạn làm, phần mở rộng không bao giờ xuất hiện như được cài đặt và nó sẽ luôn bị thiếu trong PHP).

Ngay trong khoảnh khắc tôi đã từ bỏ, tôi quyết định thay đổi phiên bản CLI của PHP từ 8.1 thành 7.4. Sau đó, tôi đã cố gắng cài đặt tiện ích mở rộng FileInfo, nhưng lần này, tiện ích mở rộng đã được cài đặt thành công:

Hướng dẫn install php fileinfo extension centos 7 - cài đặt phần mở rộng php fileinfo centos 7

Thật kỳ lạ, điều tương tự cũng xảy ra với tôi trong quá trình cài đặt cùng một phần mở rộng với Aapanel trong Ubuntu 20.04. Vì vậy, có vẻ như nó không liên quan đến Centos 7, nhưng với một cái gì đó khác.

Nguyên nhân và giải pháp

Tiện ích mở rộng FileInfo có thể được cài đặt trong hệ thống vì nó có thể được biên dịch, tuy nhiên quá trình biên dịch không thành công. Vấn đề có liên quan và dường như chỉ xảy ra với các máy chủ nhỏ với một số tài nguyên, ví dụ, vấn đề này đang xảy ra trên các VPS nanode trong linode (RAM 1GB và 1 lõi). Giải pháp tốt nhất sẽ chỉ đơn giản là chuyển sang một VP lớn hơn có ít nhất 2 GB RAM vật lý.

Ngoài ra, nếu chuyển đổi VPS không phải là một tùy chọn, bạn có thể tăng bộ nhớ có sẵn bằng cách sử dụng hoán đổi. Điều đầu tiên bạn cần làm là cài đặt tiện ích mở rộng Công cụ Linux trong App Store:

Hướng dẫn install php fileinfo extension centos 7 - cài đặt phần mở rộng php fileinfo centos 7

Sau đó, hãy mở menu Cài đặt của plugin này và chuyển đến tab Trao đổi/Bộ nhớ ảo. Trong tab này, bạn cần thêm RAM ảo nhiều hơn vào máy chủ của mình, trong trường hợp của tôi, bộ nhớ vật lý là 1GB, vì vậy tôi có thể tạo hoán đổi 1GB:

Hướng dẫn install php fileinfo extension centos 7 - cài đặt phần mở rộng php fileinfo centos 7

Khi hoán đổi đã được tạo, bạn có thể tiến hành một lần nữa với việc cài đặt tiện ích mở rộng FileInfo thông qua các cài đặt PHP, nó sẽ hoạt động ngay bây giờ như mong đợi.

Happy Coding ❤!

Khi FileInfo được chuyển từ PECL sang PHP. Cách tốt nhất để cài đặt nó thông qua WHM hoặc putty là gì?

Tôi đã thử lệnh theo lệnh:

pecl install fileinfo

và nhận được lỗi sau:

CẢNH BÁO: "PEAR/FILEINFO" được không dùng

"CẢNH BÁO

Tải xuống FileInfo-1.0.4.tgz ...

Bắt đầu tải xuống FileInfo-1.0.4.tgz (5,835 byte)

..... Xong: 5,835 byte

3 tập tin nguồn, tòa nhà

Chạy: PHPize

Không thể tìm thấy config.m4.

Đảm bảo rằng bạn chạy '/usr/local/bin/phpize' trong thư mục nguồn cấp cao nhất của mô -đun

Lỗi: 'PHPize' không thành công

Hỏi ngày 17 tháng 4 năm 2012 lúc 10:14Apr 17, 2012 at 10:14

Phần mở rộng này được bật theo mặc định kể từ Php 5.3.0. Trước thời điểm này, FileInfo là một phần mở rộng PECL nhưng không còn được duy trì ở đó. Tuy nhiên, các phiên bản trước 5.3+ có thể sử dụng phần mở rộng PECL đã ngừng.

Reference:

http://www.php.net/manual/en/fileinfo.installation.php


ERROR: `phpize' failed

Lỗi này được hiển thị vì bạn chưa cài đặt gói php-devel

Đã trả lời ngày 17 tháng 4 năm 2012 lúc 15:23Apr 17, 2012 at 15:23

Hướng dẫn install php fileinfo extension centos 7 - cài đặt phần mở rộng php fileinfo centos 7

Saket Patelsaket PatelSaket Patel

6,4651 Huy hiệu vàng26 Huy hiệu bạc36 Huy hiệu đồng1 gold badge26 silver badges36 bronze badges

1

Bạn đang cài đặt PHP-Devel? Phpize thực thi Gói Php-Devel của cần. Nếu bạn đang sử dụng Centos, hãy chạy mã sau
phpize execute need's php-devel package. if you are on centos run the following code

yum install php-devel

Đã trả lời ngày 17 tháng 4 năm 2012 lúc 15:02Apr 17, 2012 at 15:02

Hướng dẫn install php fileinfo extension centos 7 - cài đặt phần mở rộng php fileinfo centos 7

3

Đã trả lời ngày 10 tháng 8 năm 2018 lúc 12:03Aug 10, 2018 at 12:03

Hướng dẫn install php fileinfo extension centos 7 - cài đặt phần mở rộng php fileinfo centos 7

Làm cách nào để cài đặt hoặc bật tiện ích mở rộng PHP FileInfo?

Người dùng Windows phải bao gồm tệp DLL PHP_FileInfo.DLL được gói trong php.ini để kích hoạt tiện ích mở rộng này.Thư viện libmagic có thể được bó với PHP nhưng bao gồm các thay đổi cụ thể của PHP.include bundled php_fileinfo. dll DLL file in php. ini to enable this extension. The libmagic library can be bundled with PHP but include PHP specific changes.

Làm cách nào để kích hoạt tiện ích mở rộng FileInfo trong php ini cPanel?

Procedure..
Điều hướng đến phần mềm -> EasyApache4 ..
Nhấp vào nút cho biết tùy chỉnh bên cạnh các gói hiện đã được cài đặt ..
Nhấp vào phần mở rộng PHP ..
Tìm kiếm FileInfo trong thanh tìm kiếm và chọn các tiện ích mở rộng bạn muốn cài đặt ..
Nhấp vào Đánh giá ..

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

Bước 1 - Đăng nhập vào WHM và nhấp vào EasyApache 4. Bước 2 - Nhấp vào Tùy chỉnh.Bước 3 - Chuyển đổi trên phiên bản /tiện ích mở rộng PHP bạn muốn bật (bạn có thể tìm thấy các mô -đun mới với công cụ tìm kiếm ở đầu).Bước 4 - Để lưu các thay đổi, nhấp vào đánh giá.