Bài viết này sẽ hướng dẫn bạn các kiến thức về Kloxo - Upgrade phiên bản PHP 5.2 lên 5.3.
I. Giới thiệu
I. Giới thiệu
Kloxo mặc định thường cài đặt phiên bản PHP 5.2. Do đó rất nhiều website bị lỗi trang trắng do không tương thích với phiên bản PHP 5.2. Bài viết này sẽ hướng dẫn cách upgrade phiên bản 5.2 thành 5.3
II. Cài đặt
1. Cài đặt các repo cho php 5.3
# rpm -ivh http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/x86_64/ius-release-1.0-10.ius.el5.noarch.rpm
# rpm -ivh http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/x86_64/epel-release-5-4.noarch.rpm
Gỡ php hiện thời:
# yum -y remove php php-common
2. Cài đặt php 5.3 và các thư viện cần thiết
# rpm -ivh http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/x86_64/epel-release-5-4.noarch.rpm
Gỡ php hiện thời:
# yum -y remove php php-common
2. Cài đặt php 5.3 và các thư viện cần thiết
# yum -y install php53u php53u-cli php53u-devel php53u-gd php53u-imap php53u-mbstring php53u-mysql php53u-pdo php53u-pear php53u-xml
Tạo file php.ini
Tạo file php.ini
# cp /usr/local/lxlabs/kloxo/file/phpini/php.ini.template-5.2 /usr/local/lxlabs/kloxo/file/phpini/php.ini.template-5.3
# chown -R lxlabs:lxlabs /usr/local/lxlabs/kloxo/file/phpini/php.ini.template-5.3
Chỉnh sửa file '/usr/local/lxlabs/kloxo/httpdocs/htmllib/lib/lib.php
Thay các hàng sau:
===========
# chown -R lxlabs:lxlabs /usr/local/lxlabs/kloxo/file/phpini/php.ini.template-5.3
Chỉnh sửa file '/usr/local/lxlabs/kloxo/httpdocs/htmllib/lib/lib.php
Thay các hàng sau:
===========
function find_php_version()
{
global $global_dontlogshell;
$global_dontlogshell = true;
$ret = lxshell_output("rpm", "-q", "php");
$ver = substr($ret, strlen("php-"), 3);
$global_dontlogshell = false;
return $ver;
}
=========
{
global $global_dontlogshell;
$global_dontlogshell = true;
$ret = lxshell_output("rpm", "-q", "php");
$ver = substr($ret, strlen("php-"), 3);
$global_dontlogshell = false;
return $ver;
}
=========
thành
=========
=========
function find_php_version()
{
global $global_dontlogshell;
$global_dontlogshell = true;
//Can't use lxshell_output because of the STDERR
$ret = shell_exec('php -r \'echo phpversion();\' 2>nul');
$ver = substr($ret, 0, 3);
$global_dontlogshell = false;
return $ver;
}
{
global $global_dontlogshell;
$global_dontlogshell = true;
//Can't use lxshell_output because of the STDERR
$ret = shell_exec('php -r \'echo phpversion();\' 2>nul');
$ver = substr($ret, 0, 3);
$global_dontlogshell = false;
return $ver;
}
=========
Cuối cùng tiến hành restart lại apache và kiểm tra php version
# /etc/init.d/httpd restart
# php -v
Chúc bạn thành công!
Cuối cùng tiến hành restart lại apache và kiểm tra php version
# /etc/init.d/httpd restart
# php -v
Chúc bạn thành công!