【已解决】xxljob连接报错HTTP 302(HTTP 401账号或密码错误)

news2024/10/6 18:21:35

目录

问题现象:

问题分析:

        1、密码中的特殊字符。

        2、密码长度问题。

解决方法:

拓展:


问题现象:

        今天在生产环境使用xxljob任务调度来创建并执行任务时,出现了程序报错:

        通过查询xxljob日志:

        定位到报错点的代码,检查代码并本地debug后,发现是没问题的;而且在开发环境、测试环境一直都能正常运行,为啥到生产环境就报错了呢?真是百思不得其解,后来只能不断翻看接口调用相关的服务日志,终于看到了一丝异常:在接口调用结束后,我发现了如图所示的信息::


问题分析:

        从图片中可以得知一下几个信息:

        1、从>> trigger Xxl-job << response关键词可知:这是本服务连接xxljob后,xxljob响应的相关信息;

        2、从[HTTP/1.1 302 Found]可知:这是重定向错误;

        3、从[keep-alive]可知:这应该是本服务和xxljob服务间的心跳检测机制,也就是会定期的发送连接请求来检查两服务间的正常通信;

        4、从Location所示地址可知:心跳机制的链接是xxljob服务的登录接口,通过浏览器访问就可以看到如下图所示的登录界面:

        当时看到这个302报错的时候,真的是一脸懵逼,为啥会是重定向错误呢?难道是ip有误?域名不对?服务间开启了防火墙导致无法调用?做了nginx转发后url写错了?

        于是我就去看了本服务中的xxljob配置:

        经过反反复复的检查,依旧发现不出任何问题。

        也试过ip和域名的方式访问xxljob,还是没有发现问题所在。

        最终只能采用最基础的方法:直接在自己的本地debug连接到生产环境的xxljob,看看是否也会报错,通过在本地调用xxljob的登录api,终于发现了问题真正的报错信息:

账号或密码错误

        至此,才明白原来并不是302报错,这应该是401报错才对啊!

        既然知道真正的报错信息,那问题就好办了。

        通过对比开发环境、测试环境、生产环境的账号和密码发现:

        三个环境的账号是一样的,那问题肯定就出在密码上面了,其中开发环境、测试环境的密码是一样的,生产环境的密码会复杂很多,毕竟是考虑了安全性

        1、密码中的特殊字符。

        2、密码长度问题。

        亲测发现,三个环境的密码都带有特殊字符,所以排除了原因1;通过上文中提到的xxljob的登录界面中输入密码发现,原来xxljob的密码长度上限是18位,超过18位后的输入无效;通过查看三个环境的密码发现:开发、测试环境的密码是一样的,且长度并未超过18位,而生产环境的密码刚好就是19位,超过了xxljob的密码长度上限(18位) 。

        终于定位到了问题原因,那接下来解决问题就变得非常简单了。


解决方法:

        首先是修改xxljob服务的密码,保证密码长度不超过18位;然后是修改各服务中调用的xxljob服务配置的密码;重启服务后即可正常连接了:


拓展:

        按我的理解【账号或密码错误】这个应该是属于HTTP 401错误才对,也就是身份认证失败,用户没有访问权限;实在没懂为什么心跳机制会出现HTTP 302错误?

        简单地在网上查了一下资料,发现找不到有和我类似情况的有用信息,希望有知道原因的大佬赐教一下!否则只能是自己在日后有时间上xxljob官网查查文档了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1282856.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

freeRTOS创建任务

一.动态创建任务 1.函数xTaskCreate() BaseType_t xTaskCreate( TaskFunction_t pxTaskCode, // 函数指针, 任务函数const char * const pcName, // 任务的名字const configSTACK_DEPTH_TYPE usStackDepth, // 栈大小,单位为word,10表示40字节void * const pvParameters, // …

mysql数据导入时数据太大(2006 - MySQL server has gone away)——笔记

打开mysql的安装路径&#xff0c;找到my.ini文件 my.ini打开后修改max_allowed_packet的值变成32或者更大 max_allowed_packet32M修改之后重启mysql

蓝桥杯真题:四平方和

import java.io.*;/*先找后两个数for(int i 0; 2 * i * i < n;i)for(int j i; i * i j * j < n;j ) 再找前两个数 for(int i 0;4 * i * i < n; i )for(int j i;2 * (j * j i * i) < n;j )//这样就可以让后两个数尽量大,前两个数尽量小 这样就可以确定后…

ToDesk优惠码来了,需要的不容错过

最近发现Todesk也有活动了&#xff0c;很多小伙伴不知道&#xff0c;除了中秋国庆双节&#xff0c;ToDesk另有专享优惠码&#xff0c;输入优惠码最高立减25元&#xff0c;即使是活动日也能折上折&#xff0c;不影响此优惠码的折扣力度&#xff01; Todesk作为国内优良的远程控制…

广告公司选择企业邮箱的策略与技巧

对于广告公司而言&#xff0c;选择一款适合的企业邮箱不仅能提升工作效率&#xff0c;更能维护并强化公司的品牌形象。以下是在选择企业邮箱时需关注的关键因素和注意事项。 1、邮件服务商的安全性。 邮件服务商应具备严密的安全防护措施&#xff0c;包括反垃圾邮件、防病毒、防…

优思学院|六西格玛中的过程管理思维

过程是什么&#xff1f; 过程&#xff08;Process&#xff09;是一系列相互关联的活动&#xff0c;将输入转化为输出&#xff0c;我们习惯于用 X 来表示输入&#xff0c;用 Y 来表示输出&#xff0c;就如下图一样。在产品&#xff08;服务&#xff09;质量形成过程中&#xff…

DCDC电源的选择

https://blog.csdn.net/xiahailong90/article/details/79086490 先说结论&#xff1a; 高开关频率的交换式电源转换器有利也有弊&#xff0c;本文提到的好处包括体积更小、瞬时响应更快以及电压overshoot 和undershoot 值都更小&#xff0c;主要缺点则是效率降低和热量增加。 …

idea__SpringBoot微服务01——了解Springboot

了解Springboot 一、回顾学习与现在三、回顾什么是Spring三、Spring是如何简化Java开发的四、什么是SpringBoot五、看图————————创作不易&#xff0c;如觉不错&#xff0c;随手点赞&#xff0c;关注&#xff0c;收藏(*&#xffe3;︶&#xffe3;)&#xff0c;谢谢~~ 一…

使用群晖Docker搭建HomeAssistant并实现异地公网访问家中智能设备

最近&#xff0c;我发现了一个超级强大的人工智能学习网站。它以通俗易懂的方式呈现复杂的概念&#xff0c;而且内容风趣幽默。我觉得它对大家可能会有所帮助&#xff0c;所以我在此分享。点击这里跳转到网站。 使用群晖Docker搭建HomeAssistant并实现异地公网访问 文章目录 使…

SQL Server 数据库,多表查询

4.2使用T-SQL实现多表查询 前面讲述过的所有查询都是基于单个数据库表的查询&#xff0c;如果一个查询需要对多个表进行操作&#xff0c; 就称为联接查询&#xff0c;联接查询的结果集或结果称为表之间的联接。 联接查询实际上是通过各个表之间共同列的关联性来查询数据的&…

如何看待 Android 面试却是 Java 面试官?

如何看待 Android 面试却是 Java 面试官&#xff1f; 在开始前我有一些资料&#xff0c;是我根据自己从业十年经验&#xff0c;熬夜搞了几个通宵&#xff0c;精心整理了一份「Android资料从专业入门到高级教程工具包」&#xff0c;点个关注&#xff0c;全部无偿共享给大家&…

热点新闻 | 许战海:零食行业的革新之道

2023年11月29日&#xff0c;华糖万商大会在南京国际会展中心隆重举行。著名战略定位咨询专家许战海受邀出席&#xff0c;在“量贩零食产业年度盛典”上发表了主题为《如何通过竞争战略布局年度规划》的精彩演讲&#xff0c;吸引了众多业界关注。 演讲中&#xff0c;许战海老师指…

【Avue】select的远程搜索 [模糊搜索]

一、需求 【模糊搜索】 二、实现avue的远程搜索 1、search为搜索 2、remote远程搜索 3、dictValue{{key}}为输入的值

cleer耳机怎么样?cleer和索尼哪个好?热门开放式耳机推荐!

不讲废话&#xff0c;如果你在南卡、Cleer和索尼之间犹豫不决&#xff0c;不知道该选哪个开放式耳机&#xff0c;直接进&#xff0c;跟你保证看完这篇绝对能够帮助你做出最佳决策。 玩开放式耳机也接近5年了&#xff0c;用过的耳机不下十几款&#xff0c;这次花了几千块入手了…

2.4 API 开发和集成

文章目录 API 开发和集成API 的概念和作用API 开发基础API 集成API 鉴权和安全API 文档和测试微服务和 API 网关云服务和 API 集成未来趋势和发展实验实验一&#xff1a; 通过api post方式传入 json实验二&#xff1a;通过api将所需数据传入 API 开发和集成 API 的概念和作用介…

VS2022创建一个C++项目使用教程

启动VS&#xff0c;打开之后会出现如下界面&#xff0c;点击“创建新项目”&#xff0c;创建一个新项目&#xff1a; 点击“空项目”&#xff0c;再点击“下一步” 给项目命名&#xff0c;点击“创建”&#xff1a; 点击“视图”&#xff0c;再点击解决方案资源管理器&#xff…

openEuler 20.03 (LTS-SP2) aarch64 cephadm 部署ceph18.2.0【1】离线部署 准备基础环境

准备3台虚拟机服务器(均可访问公网) 10.2.1.176 &#xff08;作为操作机&#xff09; 10.2.1.191 10.2.1.219 安装基础工具 yum install -y vim 配置hosts 编辑/etc/hosts&#xff0c;添加 10.2.1.176 ceph-176 10.2.1.191 ceph-191 10.2.1.219 ceph-219 配置免密登录…

【Docker】资源配额及私有镜像仓库

资源配额及私有镜像仓库 一、Docker资源配额1.1、控制cpu1.1.1、cpu份额控制1.1.2、core核心控制1.1.3、配额控制参数的混合使用 1.2、控制内存1.3、控制IO1.4、资源释放 二、Docker私有镜像仓库Harbor2.1、Harbor简介2.2、为Harbor自签发证书【1】生成ca证书【2】生成域名的证…

伦敦银破位指标是哪些?

在伦敦银市场&#xff0c;破位通常有5种情形&#xff1a;技术形态破位、均线攴撑破位、技术指标破位、市场心理破位、高位盘整区破位。技术形态破位主要是指技术形态的重要颈线位&#xff0c;如多重顶、双顶、头肩顶等颈线位&#xff0c;以及支撑线&#xff08;主要是橫盘整理形…

盘点最近两个世纪那些搞怪又精彩的专利

人类的创新是无止境的&#xff0c;下面收集的就是最近两个世纪全球那些奇怪搞笑、精彩的6项专利。 小胡子卫士 (1876) 这款“胡须防护罩”由 VA.Gates 于 1876 年获得专利&#xff0c;是在节日盛宴期间保护胡须的巧妙解决方案。“弯曲和凹形的护罩&#xff0c;可以由硫化橡胶、…