Vấn đề của tôi không giống nhau, nhưng vì câu hỏi này là câu hỏi đầu tiên xuất hiện với câu trả lời cuối cùng rất hữu ích, tôi sẽ thêm ý kiến của mình.
Tôi đã gặp sự cố khi PHP (dưới Centos7 chạy trong bộ chứa docker) sử dụng MySQL do cấu hình thư mục - mặc dù tôi đang sử dụng các tệp nhị phân dựng sẵn và không biên dịch bất cứ thứ gì. Mặc dù các mô-đun pdo và mysqlnd.so và các tệp .ini khác nhau đã được cài đặt trong bộ chứa của tôi (chỉ sử dụng tiêu chuẩn yum install php72
và tất cả các công cụ khác được chỉ định trong trình hướng dẫn cài đặt PHP ), chúng không ở những nơi mặc định mà PHP đang tìm kiếm chúng. Tôi không biết tại sao. Có lẽ đó là một số loại docker?
Dù sao, để giải quyết vấn đề, tôi phải lặp lại một extension_dir
chỉ thị cho tôi PHP.ini
và CSONG đặt PHP_INI_SCAN_DIR
biến env. Đây là các lệnh có liên quan từ Dockerfile của tôi
ENV PHP_INI_SCAN_DIR=/etc/php.d/
RUN echo 'extension_dir = "/usr/lib64/php/modules"' >> /etc/opt/remi/php72/php.ini
Tôi hy vọng điều này không dẫn đến việc có được xung đột mô-đun sau này khi @johanes cảnh báo.
EXTENSION_DIR=/usr/lib64/php/modules phpize
.