ドメイン名を WeChat 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;
    # }
}

よし~、インターフェースリクエストに使ったドメイン名で公式サイトにもアクセスできる!

おすすめ

転載: blog.csdn.net/u010775335/article/details/127432479