1. Vì sao chọn đúng phiên bản PHP quan trọng hơn cài nhanh?
Trong thực tế, nhiều hệ thống gặp các vấn đề như:
CMS báo lỗi sau khi cập nhật
Extension PHP không tương thích
PHP chạy được nhưng hiệu năng kém
Khó nâng cấp vì phụ thuộc chằng chịt
Nguyên nhân thường không phải do PHP “kém”, mà do:
Chọn sai phiên bản PHP ngay từ đầu hoặc cài đặt thiếu kiểm soát.
Với môi trường production:
Ổn định và tương thích quan trọng hơn việc chạy phiên bản mới nhất. Cái này rất quan trọng ACE nhé. Đừng ham lên phiên bản mới với các sites đang chạy. Lỗi gần như không kiểm soát được đâu.
2. Nguyên tắc chọn phiên bản PHP cho production
Trong loạt bài này, việc chọn PHP tuân theo các nguyên tắc:
Phiên bản đang được hỗ trợ bảo mật
Tương thích với CMS / framework đang dùng
Được cộng đồng sử dụng rộng rãi
Không ở cuối vòng đời (EOL)
Không chọn PHP chỉ vì:
“Bản mới nhất”
“Nghe nói nhanh hơn”
3. Phiên bản PHP khuyến nghị hiện nay
Tại thời điểm triển khai loạt bài:
PHP 8.2: khuyến nghị cho hệ thống mới
PHP 8.1: chấp nhận được nếu cần tương thích
PHP 8.0 trở xuống: chỉ dùng cho hệ thống cũ, có lý do rõ ràng
Nguyên tắc:
Không dùng PHP đã hết hỗ trợ cho production.
Với các sites đã chạy với PHP cũ vẫn dùng PHP cũ, chỉ chuyển qua PHP mới sau khi đã test cần thận. Nếu không thể làm thì vẫn cần chạy trên PHP cũ mà nó đang chạy.
4. Vì sao không cài nhiều phiên bản PHP ngay từ đầu?
Một sai lầm phổ biến:
Cài cùng lúc 7.4, 8.0, 8.1, 8.2 “cho tiện”
Hệ quả:
Xung đột package
Khó quản lý
Dễ cấu hình nhầm PHP-FPM socket
Khuyến nghị:
Chỉ cài đúng phiên bản cần dùng. Các phiên bản khác sẽ cài sau nếu thật sự cần.
5. Chuẩn bị repository để cài PHP
Ubuntu mặc định có PHP, nhưng:
Thường không phải phiên bản mới nhất
Không linh hoạt khi cần nâng cấp
Khuyến nghị dùng PPA chính thống của Ondřej Surý.
5.1. Cài đặt PPA PHP
6. Cài đặt PHP-FPM theo phiên bản khuyến nghị
Ví dụ cài PHP 8.2:
Sau khi cài:
PHP-FPM sẽ tự chạy
Socket mặc định sẽ được tạo
Kiểm tra trạng thái:
Trạng thái mong đợi:
active (running)
7. Cài đặt các extension PHP cơ bản
7.1. Extension tối thiểu cho web server
Khuyến nghị cài các extension phổ biến:
Lý do:
Phù hợp cho hầu hết CMS (Drupal, WordPress, Laravel)
Không cài dư thừa extension hiếm dùng
7.2. Kiểm tra extension đã cài
Hoặc:
8. Kiểm tra phiên bản PHP đang sử dụng
8.1. Kiểm tra CLI
Nếu server chỉ có một phiên bản PHP:
phpsẽ trỏ đúng phiên bản vừa cài
8.2. Kiểm tra PHP-FPM socket
Socket mặc định:
Đây là thông tin rất quan trọng để cấu hình Nginx ở bài tiếp theo.
9. Những điều KHÔNG nên làm khi cài PHP
Không cài Apache kèm theo
Không cài PHP module không cần thiết
Không chỉnh php.ini vội
Không đổi socket nếu chưa hiểu rõ
Nguyên tắc:
Cài PHP sạch, chạy được, rồi mới cấu hình nâng cao.
10. Checklist sau khi cài PHP
PHP-FPM chạy ổn định
Phiên bản PHP đúng theo kế hoạch
Extension cơ bản đã cài
Xác định đúng socket PHP-FPM
Không cài dư thừa phiên bản
11. Bài tiếp theo
Trong Bài 27, chúng ta sẽ kết nối hai thành phần quan trọng:
Cấu hình PHP-FPM cho Nginx
Bài này sẽ hướng dẫn:
Kết nối Nginx ↔ PHP-FPM đúng cách
Tránh lỗi 502 Bad Gateway
Kiểm soát quyền và socket
- Đăng nhập để gửi ý kiến