欢迎来到 星空Online - 织梦者,我的原创世界。
尽管 CentOS 7.x 的终期已定,但在那天真正来临之前,仍然是相当多公司(和现有项目)的主流选择。
CentOS 7.x 自带的 git 版本为 1.8.x,属于较旧的一个版本,偶尔安装一些程序依赖 git 时,都要求更高一些的版本。但如果尝试使用 yum install git
的话,安装的仍然会是旧版本。所以我们需要按照如下的方式手动安装。
分享一个小案例。
这两天因为 log4j
的天坑导致别的事情都没做,光升级组件了。恰巧手上有个老项目顺便需要升级一下 spring-boot
,从 https://mvnrepository.com/ 上查到今天最新的版本是 2.1.6
于是便直接升级了,然后问题发生了。
线上的服务忽然开始报 400 Bad Request
错误,查了下错误日志,看到了这个提示:Invalid character found in the request target. The valid characters are defined in RFC 7230 and RFC 3986
。虽然26个字母我都认识,但他们连成的这句话让我还是不知道如何解决。百度一下发现是因为请求的字符串中包含了 |
,尽管最佳的解决方式是在请求端做一次 encode,但这种 native 的线上项目是不可能在短时间内完成全量升级的。
因为想做一个阿里云服务器的监控,项目依赖了 @alicloud/ecs20140526
拉取阿里云ECS的信息,然后该组件依赖了 @alicloud/openapi-client
,然后通过该依赖间接依赖了 @alicloud/credentials
。
在本地调试时,没有使用 webpack 将代码打包成一个独立的 index.js
文件,貌似运行一切正常,但在准备部署到线上时,发现怎么都启动不起来。
经过排查发现 @alicloud/credentials
中有一段写死的读取 package.json
的代码。