背景

我在winServer2012 R2 安装 apache2.4,php7.3.20
启动后报错:httpd.exe: Syntax error on line 552 of E:/Apache24/conf/httpd.conf: Cannot load E:/php-7.3.20/php7apache2_4.dll into server: \xd5\xd2\xb2\xbb\xb5\xbd\xd6\xb8\xb6\xa8\xb5\xc4\xc4\xa3\xbf\xe9\xa1\xa3 .

问题分析

  1. 我的目录下面是有php7apache2_4.dll这个文件的,排除文件不存在的问题。
  2. 我的php版本也是Thread Safe版的
  3. 系统环境变量中系统变量里的Path也加了php路径了,E:\php-7.3.20
    经过查验,应该是没有装 微软 VC15 运行库

处理过程

我下载了运行库: https://aka.ms/vs/17/release/vc_redist.x64.exe
但是安装运行库的时候报错:Failed to execute MSU package,是因为缺少 KB2999226 通用C运行时补丁
KB2999226 下载地址:
https://www.microsoft.com/zh-CN/download/details.aspx?id=49093
安装时提示不适用
Windows Server 2012 R2KB2999226 提示不适用,说明缺少前置补丁 KB2919442,微软强制顺序:KB2919442 → KB2919355 → KB2999226 → VC++2015+

  1. 先安装前置堆栈更新 KB2919442,管理员安装,安装完成后必须重启服务器
    下载地址:https://www.microsoft.com/zh-cn/download/details.aspx?id=42153
  2. 安装 KB2919355 汇总更新,管理员安装,安装完成后必须重启服务器
    下载地址:https://www.microsoft.com/zh-cn/download/details.aspx?id=49090
  3. 再装 KB2999226,这时就不需要重启了
  4. 最后安装 VC15
  5. 启动apache服务,启动成功。
  6. 可以用啦

更多推荐