以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]求教nginx与ft配合问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=195663)

--  作者:xubing051018
--  发布时间:2025/2/26 15:31:00
--  [求助]求教nginx与ft配合问题
根据帮助文档,做了个借助企业微信的JS-SDK 实现网页扫码的功能
之前一直是直接访问ft的http服务,都是正常扫码的,
现在配了一个nginx反向代理,扫码功能就不能使用了,就是点击扫码按键,调不出扫码的界面
其他功能都还是正常的,唯独这个扫码不行了,
请教,这是什么问题,要怎么处理

--  作者:有点蓝
--  发布时间:2025/2/26 16:01:00
--  
因为经过代理转换后,微信访问的地址和服务端代码里获取的地址不一致导致的

在nginx里给监听的端口设一下下面红色的内容。各项设置具体什么意思我也不记得了,自行百度吧

server {
        listen       443 ssl;
        server_name  wechat.foxtable.com;

        #.......其它略........

        #设置静态资源目录
        location ~ ^/(weui|images|lib)/.*$ {
            root   C:/web;
        }

        location / {
            root   C:/web;

            #保留用户真实信息
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_set_header REMOTE-HOST $remote_addr;
            proxy_set_header request_url $scheme://$host$request_uri;

            proxy_next_upstream error timeout invalid_header http_500 http_503 http_404;
            proxy_max_temp_file_size 10m;
        }
    }

然后服务端获取url的时候使用下面红色代码:
        Dim timestamp As String = CInt((Date.Now - _firstTime).TotalSeconds())
        Dim noncestr As String = Rand.NextString(12)
        Dim url As String = e.Request.Url.AbsoluteUri
        Dim signature As String = Functions.Execute("GetJsSignature", noncestr, timestamp, url)
        Dim cfg As String = "wx.config({appId:\'{0}\',timestamp:{1},nonceStr:\'{2}\',signature:\'{3}\',jsApiList:[\'scanQRCode\']});"

--  作者:xubing051018
--  发布时间:2025/2/26 16:10:00
--  
多谢,我试下