微信h5支付添加域名时报错,“h5支付域名需要提供完整的支付路径“

假设需添加的域名为"api.abc.com"

审核不通过原因是"api.abc.com"无法访问
因此需保证abc.com及api.abc.com都能访问,能看到内容

解决办法:

首先让"abc.com"正常访问,一般就是个官网,这个就不演示了

重点是让"api.abc.com"也访问官网

一般情况下,我们的接口访问会是这样的格式,api.abc.com/api/xxx

而nginx的配置会是这样:

server
{
    listen 80;
    location / {
      try_files $uri $uri/ /index.php?$query_string;
    }
}

需改成如下:

server
{
    listen 80;
    # 当访问api.abc.com/api/xx时,走这里
    # ^~的意思是:一旦匹配成功,则不再查找其他匹配项
    location ^~ /api {
      try_files $uri/ /index.php?$query_string;
    }
    
    # 当访问api.abc.com/xx时,走这里
    # $request_uri 其实就是 /xx
    location  ~ .* {
        resolver 8.8.8.8;
        proxy_pass http://abc.com$request_uri;
    }

	# 以下是错误配置示例1,这样其实也能访问官网,但资源会加载不了,报错404
	# location  ~ .* {
    #    proxy_pass http://abc.com;
    #  }
    
	# 以下是错误配置示例2,这么做会直接返回502
	# location  ~ .* {
    #   proxy_pass http://abc.com$request_uri;
    # }
}

OK~,这样你用于接口请求的域名也能访问官网啦!

猜你喜欢

转载自blog.csdn.net/u010775335/article/details/127432479