看到3.1.9官方正式注释了php版本检测代码,看起来是有较大把握了。 今天开始升级php。 我的环境:ubuntu 14, apache2 教程参考:http://askubuntu.com/questions/760907/upgrade-to-16-04-php7-not-working-in-browser 简单来说有以下步骤:
1,先安装php7,这个自己搜索了。
2,这是停Php5
sudo a2dismod php5 (启动php5: sudo a2enmod php5 )
3,这是开php7
sudo a2enmod php7.0
4,重启apache2:
sudo service apache2 restart 然后发现错误:Error: Mcrypt Module not support 搜索WC代码,发现在 UPLOAD\system\core\crypt.php 中 有一句: if (!function_exists('mcrypt_module_open')) 表示,不存在mcrypt_module_open函数,去到万能的SO, http://stackoverflow.com/questions/34083470/php7-laravel-mcrypt-issue 然后输入以下命令: sudo apt-get update sudo apt-get install mcrypt php7.0-mcrypt sudo apt-get upgrade sudo service apache2 restart 有惊无险。要知道我是在线上直接更新的(虽然没什么用户在访问)。性能方面的提升还没有观察。 欢迎交流。 --------------------- 补充,php7这逼自带的密码函数有问题 参考 http://stackoverflow.com/questions/30475946/mcrypt-encrypt-not-working-properly-on-php-5-6-9 第二个回答: $ivSize = 8; $iv = str_repeat("\0", $ivSize); $encrypted = base64_encode(mcrypt_encrypt(MCRYPT_3DES, $key, $padded, MCRYPT_MODE_CBC, $iv)); 就是说,我们要手动根据密钥的长度传入这个iv长度。而以前的版本是自动填的。好坑。 ---------------------- 第二个坑:无法显示验证码 解决,加上gd库。。 sudo apt-get install php7.0-gd sudo service apache2 restart 参考网页:http://stackoverflow.com/questions/34367917/install-php70-gd-on-ubuntu