我自己犯傻了,已经解决,不好意思
原因是服务器上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都是默认
proxy_pass http://wm/
嗯,自己犯傻了
你好 我用docker也是nginx连接不上webman 可不可以请教你下,754552529
我扣
你在论坛发个问答呀
@稚出 我发了,帖子还在审核,
你的帖子怎么没了,解决了啊
我刚才修改了下帖子内容,然后帖子就没了,估计在审核,然后我用了本帖的方法也还是不行,哭了,可能是我PHP是用的fpm模式的,但中午我又搭了php-cli的容器,也还是不行,很奇怪,得远程帮我看下,会比较快
我没用容器,然后本地php81的环境可以运行项目,说明项目运行没问题,就说容器端口隐射到本地的问题,很奇怪,其他端口比如redis mysql 隐射到本地也是没问题的,哪怕我最开始80的nginx测试到本地打印phpinfo也是没问题的,就是webman自定义项目运行端口到本地不行,很奇怪,哭了,研究很多天了,还是不行
可以了,解决了,我真牛逼,把自己认为的每一种可能都试一遍,然后就成功了,我就和做实验一样,自己瞎琢磨,哈哈哈
待会我的帖子审核通过了,我在回复是怎么解决的
哈哈哈哈,恭喜
有的时候 挺羡慕自己的聪明!
我也上传了,你看下readme,https://gitee.com/owenzhang24/docker_compose_lnmp