request()->host()无法获取访问域名问题

会飞的鱼

问题描述

由于端口原因域名需要使用非80的端口,xxx.xxx.com:8080 这种,webman没有原生$_SERVER获取访问域名,通过文档的request()->host()说是可以获取访问域名但是一直拿到的是配置的ip,通过request()->header()可以看到域名但是没有追加的8080端口,问一下大佬们 webman里面怎么自动获取访问域名的全地址啊?

194 2 0
2个回答

qnnp

nginx的话需要在反代配置区域增加或者修改

    proxy_set_header Host $host;
  • 会飞的鱼 4天前

    这个已经加了哦 nginx是按照老大的配置上弄得

  • qnnp 3天前

    那你打印一下原始请求 buffer 看看包不包含相关信息

  • tanhongbin 3天前

    这种最好 在设置里面写死当前服务器的域名,要不然自定义进程等根本拿不到域名的

  • 会飞的鱼 3天前

    这个是某些功能需要识别访问过来的域名进行分配,要动态的,写死的在配置文件里面但是不能做动态匹配呀

  • qnnp 23小时前

    $host 就是 nginx 配置文件的变量啊,就是给你当前 nginx 获取到的域名

JustForFun

。。。request()->host()也是根据请求报文来获取的,你的请求报文没有就是上一个节点的问题,要看你的上一个节点做了什么。将你的请求报文贴出来就一清二楚了

  • 会飞的鱼 3天前

    换一个服务器就正常了,客户服务器就是没有对应参数也是奇怪

  • JustForFun 3天前

    跟踪你的报文是怎么到达的,每一个节点都会影响

  • six 3天前

    客户服务器前面还有一个nginx等代理节点,没有把正确的数据传过来。
    或者是nginx配置改后没重启,没生效。
    最简单的,代码里直接 echo $request; 能看到原始的请求包数据,就知道http原始数据传递了哪些字段了。

  • six 3天前

    代码里执行 echo $request; 贴出来

  • 会飞的鱼 2天前

    {"header":{"host":"192.168.5.37","x-original-port":"80","connection":"keep-alive,close","x-real-ip":"192.168.5.35","x-forwarded-for":"117.40.103.11, 192.168.5.35","remote-host":"192.168.5.35","x-forwarded-proto":"http","x-forwarded-host":"zhyy.yhjtbg.com","cache-control":"max-age=0","upgrade-insecure-requests":"1","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,/;q=0.8,application/signed-exchange;v=b3;q=0.7","referer":"http://192.168.5.37/","accept-encoding":"gzip, deflate","accept-language":"zh-CN,zh;q=0.9","cookie":"WEBID=9dd75c46eb52da413ab3239e8f6527fa"}} 这是整个header头

  • JustForFun 2天前

    你这中间经过了代理吧?这host都变了,用request()->host()获取的就是host头,就是那个ip

  • six 2天前

    你这个是多层转发导致的,也就是在webman所在服务器的nginx前面还有至少一层转发,这之前的转发没有把host这个字段正确传递,host只传了一个ip。

  • 会飞的鱼 2天前

    所有我换了一台自己配的服务器就正常,客户提供的有问题!贝斯·~

  • six 2天前

    对,"x-forwarded-for":"117.40.103.11, 192.168.5.35" 就能看出来,整个链路http请求至少转发了2次

🔝