Installing PHP 8.2-FPM on CWP7 with CentOS 7
Cấu hình PHP-FPM 8.2 trên CentOS 7.9 với CWP 7
Trong bài viết này, chúng ta sẽ tìm hiểu cách cài đặt và cấu hình PHP-FPM 8.2 trên hệ thống CentOS 7.9 với CWP 7. Đây là hướng dẫn chi tiết từng bước giúp bạn nâng cấp hoặc thiết lập PHP mới cho website của mình.
Cài đặt PHP-FPM 8.2
Để cài đặt PHP 8.2 trên CentOS 7.9 với CWP 7, thực hiện các bước sau:
Bước 1: Cài đặt EPEL và Remi repository
yum install epel-release -y
yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm -y
Bước 2: Cài đặt yum-utils để quản lý repo
yum install yum-utils -y
Bước 3: Kích hoạt repo PHP 8.2
yum-config-manager --enable remi-php82
Bước 4: Cài đặt PHP 8.2 và các module cần thiết
yum install php82 php82-php-fpm php82-php-common php82-php-cli php82-php-mysqlnd php82-php-gd php82-php-ldap php82-php-odbc php82-php-pdo php82-php-opcache php82-php-pear php82-php-xml php82-php-xmlrpc php82-php-mbstring php82-php-snmp php82-php-soap php82-php-zip php82-php-intl -y
Cấu hình PHP-FPM 8.2
Bước 1: Sao lưu file cấu hình gốc
cp /etc/opt/remi/php82/php-fpm.d/www.conf /etc/opt/remi/php82/php-fpm.d/www.conf.bak
Bước 2: Chỉnh sửa file cấu hình
nano /etc/opt/remi/php82/php-fpm.d/www.conf
Thay đổi các thông số sau trong file:
user = nobody
group = nobody
listen = /var/run/php82-fpm.sock
listen.owner = nobody
listen.group = nobody
listen.mode = 0660
Bước 4: Khởi động và kích hoạt PHP-FPM
systemctl start php82-php-fpm
systemctl enable php82-php-fpm
Cấu hình Apache
Cập nhật file cấu hình vhost của Apache:
nano /usr/local/apache/conf.d/vhosts/oangle.com.conf
Thay đổi cấu hình để sử dụng PHP-FPM 8.2:
<IfModule proxy_fcgi_module>
<FilesMatch \.php$>
SetHandler "proxy:unix:/var/run/php82-fpm.sock|fcgi://localhost"
</FilesMatch>
</IfModule>
Khởi động lại Apache:
systemctl restart httpd
Kiểm tra cài đặt
Tạo file info.php để kiểm tra cài đặt:
echo '<?php phpinfo(); ?>' > /home/oangle/public_html/info.php
Sau đó truy cập https://yourdomain.com/info.php để xác nhận PHP 8.2 đã hoạt động.
Khắc phục sự cố: Vấn đề về quyền truy cập
Nếu bạn gặp vấn đề "Access denied" khi truy cập các file PHP trong thư mục cụ thể, đó có thể là vấn đề về quyền truy cập giữa người dùng PHP-FPM và chủ sở hữu của file/thư mục.
Ví dụ, nếu:
- PHP-FPM chạy với người dùng
nobody - Thư mục web có chủ sở hữu
oangle:oangle
Giải pháp: Thay đổi người dùng PHP-FPM
Đây là cách tốt nhất để giải quyết vấn đề, đặc biệt với WordPress:
# Chỉnh sửa file cấu hình
nano /etc/opt/remi/php82/php-fpm.d/www.conf
# Thay đổi các dòng sau
user = oangle
group = oangle
listen.owner = oangle
listen.group = oangle
# Khởi động lại PHP-FPM và Apache
systemctl restart php82-php-fpm
systemctl restart httpd
hoặc:
chgrp -R nobody /home/oangle/public_html/wp
chmod o+r /home/oangle/public_html/wp/
Kết luận
Bằng cách làm theo hướng dẫn này, bạn đã thành công trong việc:
- Cài đặt PHP 8.2 FPM trên CentOS 7.9 với CWP 7
- Cấu hình PHP-FPM để tạo socket
- Cấu hình Apache để sử dụng PHP-FPM 8.2
- Khắc phục các vấn đề về quyền truy cập
PHP 8.2 mang đến nhiều cải tiến về hiệu suất và tính năng mới, giúp website của bạn chạy nhanh hơn và bảo mật hơn.
Chúc các bạn thành công!
Comments
Post a Comment