当前位置:论坛首页 > Linux面板 > 建议

php_mod 环境无法切换PHP版本。

发表在 Linux面板2017-3-6 21:16 [复制链接] 2 3626

环境:
centos  6 x86_64
apache 2.2.X
安装了5.2 后再安装5.3 5.4
发现无法切换PHP版本。

检查代码段:
function SetPHPVersion(){
        $siteName = I('siteName');
        $version = I('version');
        if($_SESSION['server_type'] == 'nginx'){
                $file = '/www/server/nginx/conf/vhost/'.$siteName.'.conf';
                $conf = file_get_contents($file);
                $rep = "/enable-php-([0-9]{2,3})\.conf/";
                preg_match($rep,$conf,$tmp);
                $conf = str_replace($tmp[0],'enable-php-'.$version.'.conf',$conf);
        }else{
                $file = '/www/server/apache/conf/vhost/'.$siteName.'.conf';
                $conf = file_get_contents($file);
                $rep = "/php-cgi-([0-9]{2,3})\.sock/";
                preg_match($rep,$conf,$tmp);
                $conf = str_replace($tmp[0],'php-cgi-'.$version.'.sock',$conf);
        }
        if (file_put_contents('/tmp/read.tmp', $conf)) {
                $result = SendSocket("FileAdmin|SaveFile|" . $file);
                serviceWebReload();
                if($result['status']) WriteLogs("网站管理", "将网站[$siteName]PHP版本切换为[$version]!");
                ajax_return($result);
        }
        ajax_return(array('status' => false, 'msg' => '保存失败!'));
}


发现只对 fpm 模式做了处理。此模式不适用于 php_mod 。。。


使用道具 举报 只看该作者 回复
发表于 2017-3-7 09:38:49 | 显示全部楼层
是的 apache2.2不支持切换php版本
使用道具 举报 回复 支持 反对
发表于 2017-3-7 10:05:32 | 显示全部楼层
其实有一个方案的,
/www/server/apache/modules/libphp5.so 这个建议做一个软连接。
链接到 对应的 php编译版本。例如:/www/server/php/52/src/libs/libphp5.so
如果是 php_mod 方式,切换成对应的链接并重新加载~
不过。这种方案的话是整个平台都切换版本。无法实现单站点切换。。。
使用道具 举报 回复 支持 反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

普通问题处理

论坛响应时间:72小时

问题处理方式:排队(仅解答)

工作时间:白班:9:00 - 18:00

紧急运维服务

响应时间:3分钟

问题处理方式:宝塔专家1对1服务

工作时间:工作日:9:00 - 18:30

宝塔专业团队为您解决服务器疑难问题

立即付费处理

工作时间:09:00至24:00

快速回复 返回顶部 返回列表