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

Docker中用FrankenPHP运行PHP脚本无法访问localhost:8080求助

问题排查与修复

你的配置存在两个关键问题,直接修正后即可解决访问异常:

1. FrankenPHP启动参数误用

你在CMD中用-r指定网站根目录,但这个参数实际是用来设置PHP运行时配置项的(比如-r memory_limit=256M),指定网站根目录的正确参数是--root。

2. 服务监听地址受限

默认情况下,frankenphp php-server仅监听容器内部的127.0.0.1,外部请求无法穿透到容器内,必须添加--host 0.0.0.0让服务监听容器的所有网卡地址。

修正后的Dockerfile CMD配置

将原Dockerfile中的CMD替换为:

CMD ["frankenphp", "php-server", "--root", "/var/www/public_html", "--host", "0.0.0.0", "--port", "80"]

额外排查步骤(若修正后仍异常)

  • 查看容器日志,确认服务启动状态:
    docker logs therapy_app
    
  • 进入容器内部,测试服务是否正常响应:
    docker exec -it therapy_app curl localhost:80
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 03:14:57