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

MAMP调用错误PHP版本问题求助

问题描述

我正在运行MAMP 7.0免费版,已在MAMP界面选择PHP版本8.3.9。本地PATH已配置指向PHP 8.3.9:

~ % echo $path
/Applications/MAMP/bin/php/php8.3.9/bin /Applications/MAMP/Library/bin /Applications/MAMP/Library/bin/mysql57/bin [其他非PHP相关内容]
~ % which php 
/Applications/MAMP/bin/php/php8.3.9/bin/php

但MAMP的htdocs目录下的项目实际使用的是PHP 8.2.20,phpinfo()显示加载路径为/Applications/MAMP/bin/php/php8.2.20,对应的配置文件为该版本下的conf/php.ini。

2024.10.30更新:确认MAMP为每个PHP版本保留独立的php.ini文件,当前加载的是/Applications/MAMP/bin/php/php8.2.20/conf/php.ini。


解决思路与方案

MAMP免费版的PHP版本切换逻辑和Pro版差异较大,问题根源及修复方法如下:

问题原因

  1. 界面选择未同步到Web服务配置
    MAMP免费版的PHP版本选择界面存在偶发同步问题,即使在界面选中8.3.9,Apache/Nginx的配置可能仍停留在旧版本。
  2. PATH仅控制CLI版本
    你配置的系统PATH只影响终端的PHP命令行(CLI)执行环境,和MAMP的Web服务使用的PHP版本完全无关。

具体修复步骤

方法1:重启+重新选择版本

  • 彻底关闭MAMP(包括退出后台运行的进程)
  • 重新打开MAMP,在PHP版本选择器中再次选中8.3.9,点击「Start Servers」启动服务
  • 刷新项目页面,查看phpinfo()确认版本是否切换成功

方法2:手动修改Apache配置文件

MAMP免费版的Apache主配置文件路径为:/Applications/MAMP/conf/apache/httpd.conf
打开文件后,找到加载PHP模块的行:

LoadModule php8_module /Applications/MAMP/bin/php/php8.2.20/modules/libphp.so

将路径中的php8.2.20替换为php8.3.9,保存文件后重启MAMP服务。

方法3:修正php.ini关联路径

如果Web服务已切换版本但加载的仍是旧配置,检查Apache配置中的PHPIniDir行:

PHPIniDir "/Applications/MAMP/bin/php/php8.2.20/conf/"

将路径替换为/Applications/MAMP/bin/php/php8.3.9/conf/,保存后重启服务即可。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 17:30:02