为了账号安全,请及时绑定邮箱和手机立即绑定

PHP5切换PHP7的一些注意事项(丢失 VCRUNTIME140.dll)

标签:
PHP 资讯 运维

前言

2019年1月1日起,PHP 5.6 已经不再有官方安全支持。
2018年12月1日起,PHP 7.0 已经不再有官方安全支持。

2019年12月1日,再过不到1年,PHP 7.1 也会结束支持,所以建议大家有条件的还是尽快切换PHP 7.2 为妙。当然,在迁移之前也务必要做好代码数据备份以及准备工作,也要做好可能重构的心里准备。

近期把一台旧服务器的换了PHP7,结果遇到了 丢失 VCRUNTIME140.dll 错误,把这个错误解决方案附上之后,也顺便提一些基本的注意事项。

决策:我需不需要PHP7 ?

  • 如果你的网站非常重要,安全漏洞会引发致命问题
  • 如果你希望自己的网站性能更强
  • 如果你的网站PHP代码有比较好的结构或框架

请继续阅读后半部分,并且开始学习PHP7的新特性进行网站的迁移与维护。

  • 如果你的网站使用着非常旧版本的小众数据库以及驱动
  • 如果服务器用的是非常旧版本的 Windows Server 2010 甚至更老的版本
  • 如果网站用的Apache或Nginx或IIS都是非常老旧的版本,并且集成了其他一些重要的内容。

建议一锅端根据功能全部一起重构弄一次大升级,或者保持原有PHP5并且加强安全方面的排查,定时关注官方以及论坛的安全漏洞反馈。

迁移:我需要事先知道什么?

版本升级意味着可能出现不兼容的情况,所以必须要事先了解下面的内容:

  • 语法差异
  • 弃用的用法,以及语言新特性
  • 不再支持的驱动与拓展
  • 新版本所需要新驱动与拓展
  • 与其他内容的兼容性

了解新内容

PHP官方给了最新的迁移说明,请查阅 http://php.net/manual/zh/appendices.php 的内容,了解5.6 - 7.0 - 7.1 - 7.2 -7.3 的新内容,建议最好迁移到 7.2 以上。

查询数据库支持与框架支持

如果要升级,务必要确认目前业务里的其他内容不受影响,特别是数据库和框架。

数据库方面有一些变动,请参阅官方说明 http://php.net/manual/zh/migration70.incompatible.php, 调整原有程序中连接数据库的部分代码。(当然,改动之前务必备份)

框架方面,TP3兼容, TP5.0兼容, TP 5.1之后支持, Laravel 5.3之后支持,具体会不会出bug请参考论坛以及其他问答社区。

系统支持

主要检查自己当前的 LInux系统版本或者Windows Server 里面的相关拓展有没有安装。比如有一个比较常见的升级错误,丢失 VCRUNTIME140.dll

丢失 VCRUNTIME140.dll 错误

这个错误有点隐蔽,不会在php中报错,而是直接显示500错误,当在命令行中执行php指令时,则会弹窗提示

无法启动此程序,因为计算机中丢失 VCRUNTIME140.dll。尝试重新安装改程序以解决此问题。

原因是Visual C++Redistributable 2015没有安装,之前可能用PHP5只是装了2010或2008的版本,导致的错误。解决方法也很简单,重新下载安装即可。

切换语言,重新部署

前面基本的准备工作做好之后,换语言到其实是很简单的事情了。无非就是下面几个事情

  • 下载php7的语言包,解压到服务器的开发目录下
  • 调整php7的php.ini配置文件(error_log, debug_mode, ext_dir都进行对应调整)
  • 切换php的系统路径与应用程序路径
  • 保证所需的php拓展正常安装与运行

系统路径:
如果是linux直接改对应的系统配置文件即可,win则是在 此电脑-高级设置-添加环境变量 里面调整。

应用路径
Apache或者Nginx的直接改配置路径即可,对应路径参数改成最新下载下来的PHP7路径即可。
IIS则在对应的网站里,打开 IIS管理器 - 处理程序映射 ,找到原本的 FastCgiModule模块,点击右方的编辑,把里面的可执行文件(可选)(E): 的文件路径,改成最新下载下来的PHP7路径即可。

最后放上调整过的新代码,撤下旧版本代码时务必备份,完事大吉。

点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消