APC và Segmentation Fault

trong danh mục PHP

apc-segmentation-fault

Số là đang cần cài APC cho con VPS Kloxo cùi bắp để test. Theo như quy trình bình thường thì mình cũng cài đặt xong ông thần APC lên con VPS này (mặc dù có gặp vài trắc trở). Những tưởng cài APC xong thì mình tha hồ làm việc như bình thường nhưng …bùm..truy cập trang web thì bị một hiện tượng rất là khó hiểu từ trước đến giờ, đó là ra trang lỗi trên Chrome và trên Firefox thì cho download luôn file .php mà không có nội dung.

Bắt đầu con đường lần mò nguyên nhân, hiện tượng lâm sàng là khi lần đầu load trang web thì có nội dung bình thường (có nghĩa là nếu chưa có op-code cache), nhưng từ lần tiếp theo (tức là sử dụng cache) thì ra trang trắng. Vào xem APC stat (tất nhiên từ domain của thư mục khác, vì mình có thói quen là chỉ enable APC cho một vài thư mục cho 1 số domain ảo thôi vì không phải tất cả web site trên VPS đều cần APC, ví dụ PhpMyAdmin, Mantis…) thì thấy việc Hit trên cache vẫn tăng, có nghĩa là APC vẫn hoạt động nhưng tại sao bị đứt gánh.

Quyết định uninstall APC ra cài lại với mode debug enable để nếu APC có lỗi thì sẽ được log vào error log của webserver (vd error_log của apache). Chạy lại quá trình trên, vào error_log của Apache thì thấy một số dòng có nội dung là “child pid 3519 exit signal Segmentation fault (11)“, chắc chắn là nó nhưng không biết nó bị khỉ gì và ngâm cứu hồi lâu mới biết có thể do lỗi Segmentation fault khi chạy nên gây ra cớ sự này.

Đây là lần đầu tiên cài php extension gặp lỗi này nên cũng không biết bị gì, search hoài thì thấy ở 1 forum nào đó nói là có thể do xung đột với mấy thằng ionCube, xCache hay Zend Optimizer nên nó teo. Quyết định một phen disable mấy ông thần này lại vì thấy cái VPS này không cần. Tất nhiên disable mấy ông này trong php.ini:
phpini disable xcache ioncube zend optimizer

Khởi động lại web server thì thấy các module này đã disable, qua bên trang sử dụng APC thì thấy mọi thứ OK. Cảm ơn trời phật, thế là sau hơn 2 tiếng bị cái bug tào lao này, bức xúc quá nên viết để nhớ.

Chúc các bạn code vui vẻ. Code tiếp…

3 bình luận

  1. xem tu vi says:

    chưa làm được nữa bạn ơi .đoạn code cuối là gì nhỉ

  2. Bác này giống mình quá, Mình cũng vừa mua 1 em VPS, cài APC cũng cái lỗi tào lao này, Mất toi buổi chiều, tối về search thì 1 forum bảo Zend o.. và Apc không tương thích, tắt Zend, xong.

    VPS của em có 512Ram bác có cách nào tối ưu VPS chỉ em với.

  3. Mình cũng đang sài con VPS cùi ram 512, chạy ì ạch quá.

Gởi bình luận