Trong bài viết này, chúng tôi đề cập đến cách khởi động lại dịch vụ PHP-FPM [PHP-FastCGI Process Manager] để xóa bộ đệm VPS. Sau khi bật PHP-FPM trong WHM, bạn có thể cần phải khởi động lại dịch vụ sau khi xảy ra lỗi trên toàn bộ máy chủ dẫn đến các trang web hiển thị 500 Lỗi máy chủ nội bộ hoặc thay đổi phiên bản PHP. Có hai phương pháp có thể
WHM
- .
- Tìm kiếm “PHP-FPM” và chọn dịch vụ PHP-FPM cho Apache
- Chọn Yes để khởi động lại dịch vụ PHP-FPM
- .
SSH
- Đảm bảo bạn đã bật quyền truy cập root trong AMP
- SSH vào máy chủ của bạn với quyền root
- Nhập lệnh ________ 0
để khởi động lại PHP-FPM. Kết quả sẽ phản ánh dưới đây
- .
Bạn sẽ có thể xem trang web được cập nhật sau khi xóa bộ nhớ cache của trình duyệt hoặc sử dụng cửa sổ riêng tư. Nếu đã cài đặt, bạn cũng có thể muốn xóa bộ đệm Nginx bằng cách sử dụng Trình quản lý bộ đệm cPanel hoặc lệnh SSH
service nginx restart
hoặc
systemctl restart nginx
Bạn có thể đọc thông tin chi tiết hơn trong bài viết chuyên sâu về PHP-FPM của chúng tôi và so sánh giữa nó và SuPHP
Tác nhân PHP là một phần mở rộng PHP. Khi máy chủ web của bạn khởi động và tải PHP, nó cũng tải tác nhân PHP và phân tích tệp cấu hình newrelic.ini
của nó. Máy chủ web sử dụng cấu hình đó cho đến khi được yêu cầu tải lại và phân tích lại các tệp cấu hình. Khởi động lại nhắc máy chủ web làm điều đó
Bạn phải khởi động lại máy chủ web của mình khi
Bạn sửa đổi tập tin cấu hình của bạn
Thay đổi cấu hình trong tệp newrelic.ini
hoặc newrelic.cfg
không có hiệu lực [ví dụ: đặt tên cho ứng dụng của bạn, tạo nhật ký, thay đổi khóa cấp phép của bạn] cho đến khi bạn khởi động lại máy chủ web
Trình quản lý gói của bạn tự động cập nhật tác nhân mà không cần khởi động lại máy chủ web
Mẹo
Để tránh tình trạng này, hãy đặt loại trừ cho
service nginx restart0 trong trình quản lý gói của bạn
Nếu trình quản lý gói của bạn tự động cập nhật tác nhân, bạn phải khởi động lại máy chủ web của mình. Cập nhật tác nhân mà không khởi động lại có thể khiến tác nhân ngừng báo cáo
Sự cố này xảy ra khi bật tự động cập nhật và daemon cập nhật lên phiên bản mới. Trình nền mới sau đó không thể giao tiếp với tác nhân vẫn đang chạy phiên bản cũ
Để tránh điều này, tác nhân mới phải được bắt đầu sau khi cập nhật. Quá trình này phức tạp vì việc khởi động lại tác nhân đầy đủ cũng yêu cầu bạn khởi động lại phần mềm máy chủ web của mình
Trình nền được thiết lập để khởi động ở chế độ bên ngoài
Nếu bạn có tác nhân trong , bạn phải và khởi động lại tác nhân để tác nhân báo cáo
Apache không khởi động lại hoàn toàn bằng lệnh service nginx restart
1
Việc sử dụng lệnh
service nginx restart1 không phải lúc nào cũng khởi động lại hoàn toàn máy chủ web, do đó, lệnh này không phân tích lại các tệp cấu hình của tác nhân. Di tích mới khuyên bạn nên sử dụng
Tại Kinsta, chúng tôi có một tính năng tuyệt vời mà chúng tôi gọi là PHP tự phục hồi. Điều này rất hữu ích nếu bạn gặp phải lỗi 502 hoặc nếu có sự cố nào khác xảy ra. Nếu PHP ngừng hoạt động vì bất kỳ lý do gì, hệ thống của chúng tôi sẽ tự động cố gắng tự động khởi động lại để sao lưu. Trong nhiều trường hợp, đây là tất cả những gì cần thiết và bạn đã sẵn sàng
Trong những dịp hiếm hoi, nó có thể là một vấn đề lớn hơn. Trong trường hợp đó, hệ thống của chúng tôi sẽ tự động ghi nhật ký này để nhóm Quản trị hệ thống [sysadmin] của chúng tôi kiểm tra. Mặt khác, bạn vẫn có thể khởi động lại PHP cho bất kỳ trang web nào của mình chỉ bằng một nút bấm đơn giản từ MyKinsta
Cách khởi động lại PHP theo cách thủ công
Để khởi động lại PHP trên trang web WordPress của bạn, hãy làm theo các bước bên dưới
- Đăng nhập vào MyKinsta
- Truy cập Trang web WordPress và chọn trang web mà bạn muốn khởi động lại PHP
- Chuyển đến tab Công cụ và tìm phần Khởi động lại PHP
- Nhấp vào nút Khởi động lại PHP
Xin lưu ý rằng việc khởi động lại PHP sẽ mất khoảng 5-10 giây. Bạn sẽ nhận được thông báo ở cuối màn hình khi hoàn thành
Vì vậy, chúng tôi chỉ cần hướng dẫn php-fpm ghi lại pid của nó ở đâu đó. Trong ví dụ này, tôi giả sử bạn muốn lưu nó tại
service nginx restart3 và php-fpm đó chạy với tư cách người dùng _php. Đầu tiên, thêm dòng này vào tệp cấu hình
pid = /etc/php-fpm.pid
Sau đó tạo tệp
service nginx restart4 và đảm bảo rằng php-fpm có quyền sửa đổi nó
$ cd /etc
$ sudo touch php-fpm.pid
$ sudo chown _php php-fpm.pid
$ sudo chmod 644 php-fpm.pid
Bây giờ, lần tới khi php-fpm bắt đầu, bạn sẽ có thể lấy pid của nó và khởi động lại nó như thế này
$ cat /etc/php-fpm.pid
815
$ sudo kill -USR2 815
Hoặc bạn có thể kết hợp chúng thành một lệnh duy nhất
$ sudo kill -USR2 `cat /etc/private/php-fpm.pid`