Khắc phục lỗi Internal Server Error khi chạy suPHP trên Kloxo
Để an toàn, chúng tôi luôn chọn suPHP cho các máy chủ mà mình cài đặt.
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
(Sưu tầm)
Theo dòng sự kiện
Những tin mới hơn
Những tin cũ hơn