You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CentOS7下PHP7.4升级至8.1.13后Drupal站点无法访问求助

解决CentOS7升级PHP7.4到8.1后Drupal站点浏览器访问异常问题

问题根源

升级过程中未彻底清理PHP7.4的残留模块和配置文件,导致PHP-FPM加载了API版本不兼容的旧模块,引发扩展加载失败,最终导致站点无法正常处理HTTP请求。

解决方案

1. 彻底清理旧PHP组件与残留文件

  • 卸载所有PHP7.4及混合版本的相关包:
    sudo yum remove -y php74* php-* --setopt=clean_requirements_on_remove=1
    
  • 删除残留的旧模块文件和配置:
    sudo rm -rf /usr/lib64/php/modules/*
    sudo rm -rf /etc/php.d/*.ini.rpmnew
    

2. 重新配置仓库并重装PHP8.1

  • 确保仅启用remi-php81仓库:
    sudo yum-config-manager --disable 'remi-php*'
    sudo yum-config-manager --enable remi-php81
    
  • 重装PHP8.1及所需扩展:
    sudo yum -y install php php-{cli,fpm,mysqlnd,zip,devel,gd,mbstring,curl,xml,pear,bcmath,json,opcache,redis,memcache}
    

3. 检查并清理冲突配置

  • 查找并删除指向旧API版本的模块配置:
    sudo grep -l "20190902" /etc/php.d/ | xargs sudo rm -f
    
  • 验证PHP配置无残留错误:
    php -v
    php -m
    
    确保输出中无模块API不匹配的警告。

4. 重启相关服务

  • 重启PHP-FPM服务(浏览器访问依赖此服务,而非命令行PHP):
    sudo systemctl restart php-fpm
    sudo systemctl enable php-fpm
    
  • 重启Web服务器(根据实际使用的服务选择):
    # 若使用Apache
    sudo systemctl restart httpd
    # 若使用Nginx
    sudo systemctl restart nginx
    

5. 验证修复效果

  • 在Web根目录创建phpinfo.php文件:
    <?php phpinfo(); ?>
    
  • 浏览器访问该文件,确认PHP版本为8.1.13,且所有扩展(如opcache、bcmath、gd等)均正常加载。
  • 访问Drupal站点,确认报错消失。

内容的提问来源于stack exchange,提问作者Rohan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 00:31:16