环境:

Centos 6.4最小化安装。

lnmp1.0 安装包。

安装后, 打算安装magento 1.7.0.2版本。


复制 magento-check.php 到 default目录, 检查。

出现错误:mysql 无法通过,就是

  • 需要安装 MySQL 4.1.20 (or greater)


而同时,lnmp 系统中,确认mysql5.3 已经安装成功了,原因何在。


经过同事分析 magento-check.php文件,发现文件中

f(!ini_get('safe_mode')) {

               $pass .='<li>Safe Mode is <strong>off</strong></li>';

               preg_match('/[0-9]\.[0-9]+\.[0-9]+/', shell_exec('mysql -V'), $version);


使用的是sehll_exec 来检查mysql系统版本的,

而通过检查lnmp安装后php.ini的配置中,vi /usr/local/php/etc/php.ini 发现shell_exec功能是被禁用的。


disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server


暂时启用这个功能,就是在disable_functions  前添加一个 ; 然后重启lnmp,就可以通过magento-check.php的检查了。