• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧
您的位置:首页 > CMS教程 >建站教程 > 聊聊ThinkPHP3.2.3从php5升级到php7艰辛之路

聊聊ThinkPHP3.2.3从php5升级到php7艰辛之路

作者:站长图库 字体:[增加 减小] 来源:互联网

站长图库向大家介绍了ThinkPHP3.2.3升级,从php5升级php7等相关知识,希望对您有所帮助

首先ThinkPHP3.2.3支持php7吗, 绝对支持。

windows下,之前用的项目是部署在Apache2.4.17+php5.x版本, 因为客户那边网络安全扫描,发现很多漏洞,其中有apache、php的高危漏洞,多达上百次, 急需修复,如不修复将面临站点关闭的风险。

于是联系软件供应商,那边之前答应配合升级,最终未能升级, 给到的回复是ThinkPHP3.2.3不能部署在php7。

于是只能靠自己,摸索了三四天, 终于升级成功,现在跟大家分享一下大致过程。


一、升级apache, 下载地址http://httpd.apache.org/download.cgi ,下载的版本是,2.4.33

其中最主要的就是配置文件如下图:


603dea3b37737.png


apache加载php支持

PHPIniDir d:/GPS-LOCK/php/php.iniLoadModule php7_module D:/GPS-LOCK/php/php7apache2_4.dll

在此步骤遇到过不少问题,启用PHPIniDir路径,apache就启动不了,最后发现是php.ini文件引用了 php_ptheads.dll多线程引起的。反复尝试, 问题才得以解决。


二、升级php, 下载地址:https://windows.php.net/download/ 此处下载的是7.2.26,

现总结一下升级php7预到的问题

1、此处需要安装php7对应的编译vc++类库版本 , vc_redist.x64.exe, 安装的是vc15

2、sql server数据库支持


603dea6742e47.png


此处是因为php7默认没有加载sql server 相关dll


3、需要下载 Microsoft Drivers for PHP for SQL Server https://www.microsoft.com/en-us/download/details.aspx?id=20098 , 我下载的是7.2版本

修改位置文件如下


603dea9d00efe.png


4、php7中 php.ini文件, ext是省略了php_.dll如上图配置就行 , 当前需要把解压的文件拷贝到php\ext目录下

三、以为系统已经能正常在php7下运行, 结果项目用到了多线程,需要php支持pthreads,此刻已近奔溃,php.ini文件中加了extension=pthreads后, apache又启动不了。原来ptheads需要在cli模式下运行,ptheads下载地址 

https://windows.php.net/downloads/pecl/releases/pthreads/

解压下载包

1、把pthreadVC2.dll文件放在php根目录下

2、php_pthreads.dll拷贝到php\ext目录下,

再次启动apache,发现一直启动不了, 找了好多资料, 原来ptheads需要运行在cli模式下, 我的解决方案是建两个php.ini配置文件, 一个供站点使用php.ini 另一个php-cli.ini文件供ptheads使用, 文件内容一样,此时升级之路总算完成。

由于楼主非php科班出生, 走了不少弯路, 但是漏洞总算得以修复, 如果大家也同样碰到此问题, 可以一起交流, 讨论;


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 聊聊ThinkPHP3.2.3从php5升级到php7艰辛之路

相关文章

  • PS制作质感的立体字
  • 详解PHP中的addcslashes()函数
  • PHP中$_SESSION获取不到值怎么办
  • 教你怎么使用shell脚本实现服务器快速设置
  • 说说PHP太空船运算符的使用场景
  • js实现wordpress文章复制自动加版权信息
  • 3个小时内网站被谷歌,搜搜,有道收录
  • Photoshop使用素材制作唯美的花体字
  • 怎么提高百度搜索引擎关键词的排名
  • vue.js项目怎么实现百度地图显示

文章分类

  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧

最近更新的内容

    • 织梦DEDECMS首页调用单页文档内容并带过滤HTML的方
    • Photoshop制作油漆溢出特效的艺术字教程
    • Photoshop制作立体效果的金色艺术字
    • 如何去除PS渐变时存在色阶问题
    • 分享一个Golang Http 验证码示例
    • ThinkPHP5访问怎么去除/public/index.php
    • css中实现背景透明的三种方式
    • 分析PHP7.2忽略父类方法以及Liskov替换原则相关问题
    • Mysql怎么查看字段的属性值
    • PHP怎么判断字符串含不含中文

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有