xxl-job使用nginx代理https后,访问出现403异常问题解决

在nginx代理为https之前,xxl-job使用http访问是没有问题的,但是换为https后,访问就有以下报错:

很多接口都出现了403异常

DataTables warning: table id=job_list - Ajax error. For more information about this error, please see http://datatables.net/tn/7

这是之前的nginx配置:

javascript 复制代码
location /datagov/job {
  add_header Access-Control-Allow-Origin *;
  add_header Access-Control-Allow-Methods *;
  add_header Access-Control-Allow-Headers *;
 
  proxy_connect_timeout 60s;
  proxy_send_timeout 90;
  proxy_read_timeout 120;
  proxy_temp_file_write_size 256k;
  proxy_next_upstream error timeout invalid_header http_500 http_503 http_404;
  proxy_max_temp_file_size 128m;
  proxy_buffering off;
  proxy_rdirect off;
  proxy_set_header Host $host:$server_port;
  proxy_set_header Cache-Control max-age=1;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  proxy_pass http://datagov-job;
}

经过排查发现可能是XXL-JOB权限问题

XXL-JOB 可能对请求的 RefererHostOrigin 进行了校验,导致 Nginx 代理后被拒绝

解决方案:

location /datagov/job 下添加 proxy_set_header,确保请求头正确传递:

  • proxy_set_header Referer "";
  • proxy_set_header Origin "";
  • proxy_set_header Host $host;

这样可以避免 XXL-JOB 校验失败。

修改后的nginx配置:

javascript 复制代码
location /datagov/job {
	add_header Access-Control-Allow-Origin *;
	add_header Access-Control-Allow-Methods *;
	add_header Access-Control-Allow-Headers *;
			  
	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 Referer "";
	proxy_set_header Origin "";
			  
	proxy_connect_timeout 60s;
	proxy_send_timeout 90;
	proxy_read_timeout 120;
	proxy_temp_file_write_size 256k;
	proxy_next_upstream error timeout invalid_header http_500 http_503 http_404;
	proxy_max_temp_file_size 128m;
	proxy_buffering off;
	proxy_redirect off;
			  
			  
	proxy_pass http://datagov-job;
	   
}
相关推荐
AOwhisky2 小时前
Redis 学习笔记(第一期):概述、安装配置与核心理论
运维·数据库·redis·笔记·学习·云计算
小熊美家熊猫系统2 小时前
电子合同技术实现与合规实践
java·开发语言·分布式
云烟成雨TD2 小时前
Agent Scope Java 2.x 系列【3】从零构建 ReActAgent
java·人工智能·agent
一只叫煤球的猫2 小时前
ThreadForge 源码解读二:一个 Task 从 submit 到完成,内部到底发生了什么?
java·后端·面试
AOwhisky2 小时前
Redis 学习笔记(第四期):高可用与集群(哨兵 + Cluster + 容器化)
linux·运维·数据库·redis·笔记·学习·缓存
阿狸猿3 小时前
论微服务架构及其应用
java·微服务·架构
C语言小火车3 小时前
嵌入式Linux应用开发技术栈完全指南
linux·运维·服务器
IT WorryFree3 小时前
FortiGate 排错常用OID速查表(含Trap OID+轮询OID)
运维·网络
m0_738120723 小时前
渗透测试基础——基于Docker的Rsync服务靶场搭建与原理讲解
运维·服务器·网络·安全·web安全·docker·容器