[closed]nginx反向代理docker内的webman的问题

nitron

我自己犯傻了,已经解决,不好意思

原因是服务器上PHP是7.1,部分服务无法跑在更高版本上,所以使用docker方式进行部署,docker镜像是

https://github.com/Tinywan/docker-php-webman

暴露8787端口,使用nginx做反向代理,nginx配置

upstream wm {
    server 127.0.0.1:8787;
}

server {
    listen: 443;
    .....
    location / {
        ...... 
    }

    location /webman {
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header Host $host;
      proxy_pass http://wm;
    }
}

在服务器上curl http://localhost/ | curl http://127.0.0.1/ | curl http://docker内网ip/ 都是正常返回

但是外网 curl https://domain.name/webman 的时候返回的却是webman的404页面, 但是直接curl http://domain.name:8787 是正常返回

求个指点,想走https, 不太想暴露8787端口
log及stdout都正常
PHP 8.1.4, webman v1.3.4 所有config都是默认

2025 2 1
2个回答

wolfcode

proxy_pass http://wm/

owenzhang

你好 我用docker也是nginx连接不上webman 可不可以请教你下,754552529

  • owenzhang 2022-11-01

    我扣

  • 稚出 2022-11-01

    你在论坛发个问答呀

  • owenzhang 2022-11-01

    @稚出 我发了,帖子还在审核,

  • 稚出 2022-11-01

    你的帖子怎么没了,解决了啊

  • owenzhang 2022-11-01

    我刚才修改了下帖子内容,然后帖子就没了,估计在审核,然后我用了本帖的方法也还是不行,哭了,可能是我PHP是用的fpm模式的,但中午我又搭了php-cli的容器,也还是不行,很奇怪,得远程帮我看下,会比较快

  • owenzhang 2022-11-01

    我没用容器,然后本地php81的环境可以运行项目,说明项目运行没问题,就说容器端口隐射到本地的问题,很奇怪,其他端口比如redis mysql 隐射到本地也是没问题的,哪怕我最开始80的nginx测试到本地打印phpinfo也是没问题的,就是webman自定义项目运行端口到本地不行,很奇怪,哭了,研究很多天了,还是不行

  • owenzhang 2022-11-01

    可以了,解决了,我真牛逼,把自己认为的每一种可能都试一遍,然后就成功了,我就和做实验一样,自己瞎琢磨,哈哈哈

  • owenzhang 2022-11-01

    待会我的帖子审核通过了,我在回复是怎么解决的

  • 稚出 2022-11-01

    哈哈哈哈,恭喜

  • owenzhang 2022-11-01

    有的时候 挺羡慕自己的聪明!

  • owenzhang 2022-11-01

    我也上传了,你看下readme,https://gitee.com/owenzhang24/docker_compose_lnmp

年代过于久远,无法发表回答
🔝