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;
	   
}
相关推荐
好奇的菜鸟19 分钟前
如何在IntelliJ IDEA中设置数据库连接全局共享
java·数据库·intellij-idea
代码老y26 分钟前
Docker:容器化技术的基石与实践指南
运维·docker·容器
典学长编程1 小时前
Linux操作系统从入门到精通!第二天(命令行)
linux·运维·chrome
AI生存日记1 小时前
百度文心大模型 4.5 系列全面开源 英特尔同步支持端侧部署
人工智能·百度·开源·open ai大模型
DuelCode1 小时前
Windows VMWare Centos Docker部署Springboot 应用实现文件上传返回文件http链接
java·spring boot·mysql·nginx·docker·centos·mybatis
优创学社21 小时前
基于springboot的社区生鲜团购系统
java·spring boot·后端
幽络源小助理2 小时前
SpringBoot基于Mysql的商业辅助决策系统设计与实现
java·vue.js·spring boot·后端·mysql·spring
猴哥源码2 小时前
基于Java+springboot 的车险理赔信息管理系统
java·spring boot
步、步、为营2 小时前
.net开源库SignalR
开源·.net
YuTaoShao2 小时前
【LeetCode 热题 100】48. 旋转图像——转置+水平翻转
java·算法·leetcode·职场和发展