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

Fedora 39下Devilbox自定义php.ini未被识别问题求助

解决Devilbox中自定义PHP配置未加载的问题

排查与修复步骤

1. 分清CLI和FPM的配置差异

php --ini查的是PHP CLI的加载配置,而Devilbox文档说的是PHP-FPM会加载/etc/php-custom.d/下的.ini文件,两者的配置加载逻辑不一样。要确认PHP-FPM是否真的加载了你的配置:

  • 执行命令检查FPM配置有效性:
    docker exec devilbox-php-1 php-fpm8.2 -t
    
  • 或者查看FPM日志找加载错误:
    docker exec devilbox-php-1 tail -f /var/log/php-fpm.log
    

2. 检查配置文件语法

如果Xdebug配置有语法错误,会被PHP直接跳过。用CLI验证配置语法:

docker exec devilbox-php-1 php -c /etc/php-custom.d/devilbox-php.ini -n

如果输出错误信息,修正后重启PHP-FPM容器:

docker restart devilbox-php-1

3. 确认目录映射正确性

虽然容器内能看到文件,但要检查Devilbox的docker-compose.yml里,PHP服务的volumes配置是否正确把cfg/php-ini-8.2映射到容器的/etc/php-custom.d/:

  • 找到php服务的volumes段,确认有类似配置:
    volumes:
      - ./cfg/php-ini-8.2:/etc/php-custom.d
    
    若路径不对,修改后重启服务:
    docker-compose up -d php
    

4. 强制重载PHP-FPM配置

有时候文件存在但FPM没自动加载,手动触发:

# 重启容器
docker restart devilbox-php-1

# 或者不重启,直接重载配置
docker exec devilbox-php-1 php-fpm8.2 -s reload

5. 验证Xdebug实际加载状态

不管CLI是否显示,直接查FPM的Xdebug加载情况:

docker exec devilbox-php-1 php-fpm8.2 -i | grep xdebug

如果能看到Xdebug相关输出,说明配置已加载,调试问题可能出在IDE或端口映射;如果看不到,回头排查配置文件或加载逻辑。


内容的提问来源于stack exchange,提问作者László Stahorszki

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 05:12:10