Khắc phục lỗi Internal Server Error khi chạy suPHP trên Kloxo
Kloxo – Một Control Panel cho linux server hoàn toàn miễn phí. Dĩ nhiên, cái gì cũng có giá của nó, không phải ngẫu nhiên nó free. Vì vậy bạn đừng mang ra so sánh với cPanel hay DirectAdmin nhé.
Tuy nhiên, Kloxo rất hay lỗi, và lỗi nhiều nhất chính là vụ website gặp Internal Server Error khi chạy suPHP.
Nếu bạn chạy lệnh yum list php và thấy php.x86_64 5.2.17-13 installed thì chuyển sang suPHP trong phần Webserver Config của Kloxo thì sẽ gặp lỗi này.
Nguyên nhân là do php-cgi ở phiên bản này được thiết kế cho php-fpm. Lỗi này xuất hiện khi chạy fastcgi với lighttpd và suphp cho apache.
Phương án xử lý là chúng ta sẽ downgrade PHP xuống.
Các bước như sau:
I. ĐỐI VỚI APACHE
1. Sao lưu php.ini
cd /etc yes | cp -rf php.ini php.ini.bck cd /
2. Hạ PHP xuống phiên bản cũ
rpm -e –nodeps php rpm -e –nodeps php-cli rpm -e –nodeps php-common rpm -e –nodeps php-fpm yum install php-5.2.17-1
3. Copy sang phiên bản cũ
yes | cp -rf /usr/bin/php /usr/bin/php_pure yes | cp -rf /usr/bin/php-cgi /usr/bin/php-cgi_pure
4. Làm cho suphp nhận phiên bản cũ như là phiên bản mới
cd /usr/local/lxlabs/kloxo/file/ yes | cp -rf etc_suphp.conf etc_suphp.conf.orig sed -i ‘s/\/usr\/bin\/php-cgi”/\/usr\/bin\/php-cgi_pure”/’ etc_suphp.conf cd /etc sed -i ‘s/\/usr\/bin\/php-cgi”/\/usr\/bin\/php-cgi_pure”/’ suphp.conf
5. Khôi phục php.ini
yes | cp -rf php.ini.bck php.ini cd /
6. Nâng cấp trở lại
yum upgrade php*
7. Khởi động lại server
reboot
II. ĐỐI VỚI LIGHTTPD
Rất đơn giản, bạn chạy lần lượt các lệnh sau
cd /usr/local/lxlabs/kloxo/httpdocs/lib/domain/web/driver yes | cp -rf web__lighttpdlib.php web__lighttpdlib.php.orig sed -i ‘s/\/usr\/bin\/php-cgi\\”/\/usr\/bin\/php-cgi_pure\\”/’ web__lighttpdlib.php cd /home/httpd sed -i ‘s/\/usr\/bin\/php-cgi/\/usr\/bin\/php-cgi_pure/’ nobody.sh cd /
Chúc các bạn thành công!