当前位置:论坛首页 > Linux面板 > 求助

【已解答】使用负载均衡后 支付宝不回调 支付已经完成

发表在 Linux面板2023-4-3 11:18 [复制链接] 14 3143

本帖最后由 堡塔运维小林 于 2023-4-3 12:08 编辑

使用负载均衡后 支付宝不回调 支付已经完成
使用道具 举报 只看该作者 回复
发表于 2023-4-3 12:08:17 | 显示全部楼层
您好,您的负载均衡策略设置的是什么呢?这个问题可能是由于nginx的负载均衡策略导致的。如果您使用了nginx的ip_hash策略,那么可能导致支付宝回调时请求的ip地址与您的服务器实际的ip地址不一致,从而导致支付宝无法正确回调。
解决方向:
1、尝试使用nginx的其他负载均衡策略,比如least_conn策略,这样可以避免ip_hash策略带来的问题。
2、在支付宝回调时,将回调地址设置为nginx负载均衡服务器的ip地址,而不是具体的后端服务器地址,这样可以保证回调地址与请求地址一致。
3、如果您必须使用ip_hash策略,可以尝试在nginx配置中添加以下参数:proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 这样可以将实际的ip地址传递给后端服务器,在支付宝回调时就可以正确识别回调地址了。
使用道具 举报 回复 支持 反对
发表于 2023-4-3 12:58:47 | 显示全部楼层
堡塔运维小林 发表于 2023-4-3 12:08
您好,您的负载均衡策略设置的是什么呢?这个问题可能是由于nginx的负载均衡策略导致的。如果您使用了nginx ...

具体流程是?添加在哪里。前端还是后端?
使用道具 举报 回复 支持 反对
发表于 2023-4-3 13:02:45 | 显示全部楼层
堡塔运维小林 发表于 2023-4-3 12:08
您好,您的负载均衡策略设置的是什么呢?这个问题可能是由于nginx的负载均衡策略导致的。如果您使用了nginx ...

我具体需要在哪里添加proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
使用道具 举报 回复 支持 反对
发表于 2023-4-3 14:11:17 | 显示全部楼层
酷微米社区 发表于 2023-4-3 13:02
我具体需要在哪里添加proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $pro ...

您好,在/www/server/nginx/conf/proxy.conf文件里面设置,配置好试试能否成功
使用道具 举报 回复 支持 反对
发表于 2023-4-3 14:17:55 | 显示全部楼层
堡塔运维小林 发表于 2023-4-3 14:11
您好,在/www/server/nginx/conf/proxy.conf文件里面设置,配置好试试能否成功

放在那个后面?
使用道具 举报 回复 支持 反对
发表于 2023-4-3 14:18:54 | 显示全部楼层
堡塔运维小林 发表于 2023-4-3 14:11
您好,在/www/server/nginx/conf/proxy.conf文件里面设置,配置好试试能否成功
  1. user  www www;
  2. worker_processes auto;
  3. error_log  /www/wwwlogs/nginx_error.log  crit;
  4. pid        /www/server/nginx/logs/nginx.pid;
  5. worker_rlimit_nofile 51200;

  6. stream {
  7.     log_format tcp_format '$time_local|$remote_addr|$protocol|$status|$bytes_sent|$bytes_received|$session_time|$upstream_addr|$upstream_bytes_sent|$upstream_bytes_received|$upstream_connect_time';
  8.   
  9.     access_log /www/wwwlogs/tcp-access.log tcp_format;
  10.     error_log /www/wwwlogs/tcp-error.log;
  11.     include /www/server/panel/vhost/nginx/tcp/*.conf;
  12. }

  13. events
  14.     {
  15.         use epoll;
  16.         worker_connections 51200;
  17.         multi_accept on;
  18.     }

  19. http
  20.     {
  21.         include       mime.types;
  22.                 #include luawaf.conf;

  23.                 include proxy.conf;

  24.         default_type  application/octet-stream;

  25.         server_names_hash_bucket_size 512;
  26.         client_header_buffer_size 32k;
  27.         large_client_header_buffers 4 32k;
  28.         client_max_body_size 5000m;

  29.         sendfile   on;
  30.         tcp_nopush on;

  31.         keepalive_timeout 60;

  32.         tcp_nodelay on;

  33.         fastcgi_connect_timeout 1000;
  34.         fastcgi_send_timeout 1000;
  35.         fastcgi_read_timeout 1000;
  36.         fastcgi_buffer_size 64k;
  37.         fastcgi_buffers 4 64k;
  38.         fastcgi_busy_buffers_size 128k;
  39.         fastcgi_temp_file_write_size 256k;
  40.                 fastcgi_intercept_errors on;

  41.         gzip on;
  42.         gzip_min_length  1k;
  43.         gzip_buffers     4 16k;
  44.         gzip_http_version 1.1;
  45.         gzip_comp_level 2;
  46.         gzip_types     text/plain application/javascript application/x-javascript text/javascript text/css application/xml;
  47.         gzip_vary on;
  48.         gzip_proxied   expired no-cache no-store private auth;
  49.         gzip_disable   "MSIE [1-6]\.";

  50.         limit_conn_zone $binary_remote_addr zone=perip:10m;
  51.                 limit_conn_zone $server_name zone=perserver:10m;

  52.         server_tokens off;
  53.         access_log off;

  54. server
  55.     {
  56.         listen 888;
  57.         server_name phpmyadmin;
  58.         index index.html index.htm index.php;
  59.         root  /www/server/phpmyadmin;
  60.             location ~ /tmp/ {
  61.                 return 403;
  62.             }

  63.         #error_page   404   /404.html;
  64.         include enable-php.conf;

  65.         location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
  66.         {
  67.             expires      30d;
  68.         }

  69.         location ~ .*\.(js|css)?$
  70.         {
  71.             expires      12h;
  72.         }

  73.         location ~ /\.
  74.         {
  75.             deny all;
  76.         }

  77.         access_log  /www/wwwlogs/access.log;
  78.     }
  79. include /www/server/panel/vhost/nginx/*.conf;
  80. }

复制代码
放在哪里?
使用道具 举报 回复 支持 反对
发表于 2023-4-3 14:20:47 | 显示全部楼层

您好,在/www/server/nginx/conf/proxy.conf文件里面设置
使用道具 举报 回复 支持 反对
发表于 2023-4-3 14:52:55 | 显示全部楼层
堡塔运维小林 发表于 2023-4-3 14:20
您好,在/www/server/nginx/conf/proxy.conf文件里面设置

好的 我试试
使用道具 举报 回复 支持 反对
发表于 2023-4-3 15:05:59 | 显示全部楼层

还是不到账  就添加了一个/www/server/nginx/conf/proxy.conf  这个代码proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
使用道具 举报 回复 支持 反对
发表于 2023-4-3 15:45:35 | 显示全部楼层
所有服务器都要 添加这个代码吗
使用道具 举报 回复 支持 反对
发表于 2023-4-3 16:45:57 | 显示全部楼层
先说一下我后端服务器情况,80,443端口直接ip访问屏蔽 机房做了策略 会不是这个影响?
使用道具 举报 回复 支持 反对
发表于 2023-4-4 10:01:27 | 显示全部楼层
本帖最后由 堡塔运维小林 于 2023-4-4 10:20 编辑
GOQU 发表于 2023-4-3 16:45
先说一下我后端服务器情况,80,443端口直接ip访问屏蔽 机房做了策略 会不是这个影响? ...

您好,这个我不太清楚,您可以先打开试试,另外您的负载均衡的配置是否正确呢?采用的负载均衡策略是什么
使用道具 举报 回复 支持 反对
发表于 2023-4-9 12:21:40 | 显示全部楼层
是不是负载均衡用http协议  支付宝回调用https回调  这个具体要怎么调整?参数如何配置  现在还是没生效还是不回调。
使用道具 举报 回复 支持 反对
发表于 2023-4-11 15:09:27 | 显示全部楼层
GOQU 发表于 2023-4-9 12:21
是不是负载均衡用http协议  支付宝回调用https回调  这个具体要怎么调整?参数如何配置  现在还是没生效还 ...

所有负载节点有无部署到SSL呢?如没有的话,可在负载节点下部署下SSL看看。
主控不做SSL部署,其他负载节点下部署SSL
使用道具 举报 回复 支持 反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

企业版年付运维跟进群

普通问题处理

论坛响应时间:72小时

问题处理方式:排队(仅解答)

工作时间:白班:9:00 - 18:00

紧急问题处理

论坛响应时间:10分钟

问题处理方式:1对1处理(优先)

工作时间:白班:9:00 - 18:00

工作时间:晚班:18:00 - 24:00

立即付费处理
快速回复 返回顶部 返回列表