在Magento后台通过Magento connector 安装扩展时不成功并提示:Warning: popen() has been disabled for security reasons in …. 意思是服务器域名的php.ini中禁用了popen功能。处理办法是要首先了解你用的虚拟主机用的fastCGI还是其他模式来运行php,fastCGI可以基于域名为每个域名单独设置php.ini配置php运行环境。如果是则要找到域名的php.ini,找到:disable_functions=phpinfo,passthru,exec,system,popen,escapeshellcmd,escapeshellarg,shell_exec则把里面的 popen, 删除 并保存 重启php-fcgi。 Exception caught:Warning: pclose() has been disabled for security reasons in /home/buying/public_html/downloader/pearlib/php/OS/Guess.php on line 256登录cpanel后台,查看网站 家 目录,里面有一个定制的php.ini,要用这个自己定制的pnp.ini而不是用服务器默认的配置,必需作如下设置:在我们的cpanel空间上,客户可以自己定制php配置文件。 方法一:把php.ini文件放到想要定制的网站目录下比如你的cpanel用户名是mike,上传一份自己定制的php.ini到网站根目录public_html下面即可。然后可以检验一下是否生效:在网站根目录下新建一个名为info.php的文件,键入以下内容并保存<?phpphpinfo();?>用浏览器访问这个文件(可能是http://mike.abc.com/info.php)可以看到“Loaded Configuration File”一项的值会是“/home/mike/public_html/php.ini”,这表明你的配置文件已经成功被调用了。不过,上面这种方法只能使配置文件生效于某一个目录,而且把配置文件放在能够被web浏览到的地方也有一定风险,所以我们推荐下面的方法。 方法二:把定制的php.ini放在家目录里(推荐)如/home/mike/php.ini ,然后在网站根目录的.htaccess文件里面加入一句suphp_configpath /home/mike(用上面同样的方法,可以检验配置文件是否被调用)。这样全站都可以调用这个配置文件,而且文件放在家目录也比较安全一些。当然,你自己定制的php.ini也许会和服务器上的不太一样,这就意味这你可能无法调用某些php的扩展功能。所以,你最好联系客服人员,让他们给你一份服务器上php配置文件的备份,然后自己再做修改。 |