当前位置: 首页 > news >正文

curl调用微信退款No required SSL certificate was sent

文章目录

  • 前言
  • 一、错误一
  • 二、错误二
  • 总结


前言

在之前的博客中提到微信证书到期了,需要更换,但是当我更换完证书自信满满的时候,却出现了两个问题,记录一下。


一、错误一

CURL Error: 58unable to load client key: -8178 (SEC_ERROR_BAD_KEY)
证书格式问题

-----BEGIN ENCRYPIED PRIVATE KEY-----
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-----END ENCRYPIED PRIVATE KEY-----

修改为

-----BEGIN PRIVATE KEY-----
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-----END PRIVATE KEY-----

二、错误二

curl post请求返回 400 No required SSL certificate was sent。意思就是没有将证书信息传给微信

<html>
<head><title>400 No required SSL certificate was sent</title></head>
<body bgcolor="white">
<center><h1>400 Bad Request</h1></center>
<center>No required SSL certificate was sent</center>
<hr><center>nginx</center>
</body>
</html>

查看代码如下

 if ($useCert) {curl_setopt($ch, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1_2);//设置证书//使用证书:cert 与 key 分别属于两个.pem文件curl_setopt($ch, CURLOPT_SSLCERTTYPE, 'PEM');curl_setopt($ch, CURLOPT_SSLCERT, dirname(getcwd()) . '/data/cert/apiclient_cert.pem');curl_setopt($ch, CURLOPT_SSLKEYTYPE, 'PEM');curl_setopt($ch, CURLOPT_SSLKEY, dirname(getcwd()) . '/data/cert/apiclient_key.pem');}

已明确两个文件路径正确,且可访问。

折腾了一早上,一直怀疑是配置问题,最后重启了容器解决,使用了apache作为部署服务器,进入到apache的安装目录,执行了重启命令,终于解决。

apachectl restart 


总结

以上就今天的内容,欢迎点赞,收藏和关注。

相关文章:

curl调用微信退款No required SSL certificate was sent

文章目录 前言一、错误一二、错误二 总结 前言 在之前的博客中提到微信证书到期了&#xff0c;需要更换&#xff0c;但是当我更换完证书自信满满的时候&#xff0c;却出现了两个问题&#xff0c;记录一下。 一、错误一 CURL Error: 58unable to load client key: -8178 (SEC_…...

进程守护SuperVisord内部的进程定时监测并重启

一个swoole的wensocket程序运行在SuperVisord下端口9503 设置一个每分钟任务监测9503的端口链接数&#xff0c;输出链接数&#xff0c;并在链接数为0的情况下重启wensocket进程。 以下截图是宝塔面板环境下 #!/bin/bash current$(date %H.%M) ws9503_procnumnetstat -nat | gre…...

[面试题]ES6 Javascript

ES6 箭头函数和普通函数有什么区别? 1)定义方式:箭头函数使用箭头(>)语法&#xff0c;省略了 function 关键字。 2)参数处理:如果只有一个参数&#xff0c;箭头函数可以省略括号。 3)函数体:如果函数体只有一条语句&#xff0c;箭头函数可以省略花括号和 return 关键字 4)…...

四款国内外远程桌面软件横测:ToDesk、向日葵、TeamViewer、AnyDesk

前言 远程桌面软件对于职场人来说并不陌生&#xff0c;可以说是必备的办公软件之一。在经历过新冠疫情后&#xff0c;大家对于远程办公的认识越来越深入&#xff0c;也就在这段期间&#xff0c;远程桌面软件大范围的应用起来&#xff0c;真正走进大众视野并融入我们的工作和生…...

解决电脑突然没有声音

问题描述&#xff1a;电脑突然没有声音了&#xff0c;最近没有怎么动过系统&#xff0c;没有安装或者卸载过什么软件&#xff0c;也没有安装或者卸载过驱动程序&#xff0c;怎么就没有声音了呢&#xff1f; 问题分析&#xff1a;仔细观察&#xff0c;虽然音量按钮那边看不到什…...

ZFX数字股票全球品牌战略新闻发布会在香港盛大举行

香港&#xff0c;2024年10月26日 —— 在香港这座东方之珠&#xff0c;ZFX集团今日在港岛 海逸君绰酒店隆重举办了“ZFX数字股票全球品牌战略新闻发布会暨世界佳 丽群星闪耀香港见面会”。作为全球数字金融领域的一次盛会&#xff0c;本次活动不 仅展示了ZFX集团在数字资产交易…...

vue中elementUI的el-select下拉框的层级太高修改设置!

项目场景&#xff1a; 项目中遇到一个问题&#xff0c;下拉框选择之后弹出一个弹出框选择数据再关闭。 问题就出在&#xff0c;我打开下拉框后再弹出弹出框&#xff0c;弹出框的 z-index 层级没有 select 的层级高&#xff0c;导致我弹框弹出了几个下拉框还在弹出框上面显示着…...

测试员最佳跳槽频率是多少?进来看看你是不是符合

最近笔者刷到一则消息&#xff0c;一位测试员在某乎上分享&#xff0c;从月薪5K到如今的20K&#xff0c;他总共跳了10次槽&#xff0c;其中还经历过两次劳动申诉&#xff0c;拿到了大几万的赔偿&#xff0c;被同事们称为“职场碰瓷人”。 虽说这种依靠跳槽式的挣钱法相当奇葩&…...

【数字信号处理】

https://www.bilibili.com/video/BV1B4421U79k/ 文章目录 1-绪论11-FFT1-绪论 1- Preliminery 引言 信号的概念,离散时间时域,频域2- 获得数字信号 采样,对信号的一种表达方式,是DSP的基础A/D,D/A 数字都是人造的,两个桥梁将现实和人造连接3-如何处理数字信号 两个工具:…...

Docker | 校园网上docker pull或者docker run失败的一种解决方法

场景 需要从仓库拉取镜像 无论使用命令docker pull 还是 docker run 但是总是显示如下的错误: 解决方法 查看虚拟机网络连接方式 Linux上检查校园网是否登录 有界面 无界面 只是命令行操作的Linux 关于Linux服务器端更新命令apt update没有效果问题总结(校园网认证)...

实现Java后端的图形验证码和行为验证码

登录添加图形验证码&#xff1a; 在 Java 中&#xff0c;我们可以使用一些图形处理库&#xff08;如 java.awt 和 javax.imageio&#xff09;生成图形验证码&#xff0c;并将验证码文本存储在会话&#xff08;session&#xff09;中以供验证。下面是一个完整的实现步骤&#x…...

事务的原理、MVCC的原理

事务特性 数据库事务具有以下四个基本特性&#xff0c;通常被称为 ACID 特性&#xff1a; 原子性&#xff08;Atomicity&#xff09;&#xff1a;事务被视为不可分割的最小工作单元&#xff0c;要么全部执行成功&#xff0c;要么全部失败回滚。这意味着如果事务执行过程中发生…...

Golang反射原理

Golang反射原理 Go语言中的反射机制是通过标准库中的reflect包实现的。反射允许程序在运行时检查变量的类型和值&#xff0c;甚至可以修改变量的值。以下是反射的基本原理和使用方法&#xff1a; 基本原理 类型和种类&#xff1a; 反射中的类型信息通过reflect.Type表示&…...

MATLAB计算朗格朗日函数

1. 朗格朗日函数介绍 朗格朗日函数&#xff08;Lagrange function&#xff09;通常用于优化问题&#xff0c;尤其是带有约束的优化问题。其一般形式为&#xff1a; 其中&#xff1a; f(x) 是目标函数。 是约束条件。 是拉格朗日乘子。 为了编写一个MATLAB代码来计算和绘制…...

嵌入式linux跨平台基于mongoose的TCP C++类的源码

嵌入式linux开发中&#xff0c;需要使用http服务器时&#xff0c;mongoose是个很好的选择&#xff0c;linux&#xff0c;win双平台都支持&#xff0c;代码全开放&#xff0c;简单明了&#xff0c;我非常喜欢这种尽在撑控中的感觉&#xff08;关于mongoose实现一个小型的http服务…...

入驻商家必看:如何在TikTok实现多店铺高效上货及运营?

TikTok作为跨境电商平台之一&#xff0c;越来越多人进入其电商赛道——TikTok Shop&#xff0c;运营者想要长远发展&#xff0c;了解平台的政策动向并进行调整店铺至关重要。本文整理了TikTok Shop降低入驻门槛的资讯&#xff0c;并为广大TikTok电商运营者提供实用、有效的开店…...

spring-boot-starter-data-redis

一、几个依赖的关系 在spring与redis整合时有下面几种&#xff1a; spring-boot-starter-data-redis spring-boot-starter-redis spring-data-redis 其中&#xff0c;spring-boot-starter-data-redis和spring-boot-starter-redis中都包含有spring-data-redis&#xff0c; 现在…...

科研绘图神器:机制图、模式图有哪些好用的工具推荐?

我是娜姐 迪娜学姐 &#xff0c;一个SCI医学期刊编辑&#xff0c;探索用AI工具提效论文写作和发表。 最近不少学员在问科研绘图相关的问题。前面娜姐介绍过AI辅助绘图的方法和思路&#xff1a; 顶刊的图文摘要Graphical Abstract&#xff0c;如何巧用AI绘制&#xff1f; 目前…...

DIFFUSIONSAT: A GENERATIVE FOUNDATION MODEL FOR SATELLITE IMAGERY(2024-ICLR)

论文&#xff1a;DIFFUSIONSAT: A GENERATIVE FOUNDATION MODEL FOR SATELLITE IMAGERY(2024-ICLR) 习惯用飞书做笔记了&#xff0c;大家见谅 Diffusionsat&#xff1a;卫星图像生成基础模型...

文件中台与安全:集成方案的探索与实践

在企业数字化转型加速的今天&#xff0c;文件中台已成为支撑数据共享与高效协作的关键基础设施。然而&#xff0c;随着企业文件需求的增多和内容复杂性的提升&#xff0c;文件的安全问题也日益突显。如何在构建强大文件中台的同时&#xff0c;保障文件数据的安全性&#xff0c;…...

谷歌浏览器插件

项目中有时候会用到插件 sync-cookie-extension1.0.0&#xff1a;开发环境同步测试 cookie 至 localhost&#xff0c;便于本地请求服务携带 cookie 参考地址&#xff1a;https://juejin.cn/post/7139354571712757767 里面有源码下载下来&#xff0c;加在到扩展即可使用FeHelp…...

在软件开发中正确使用MySQL日期时间类型的深度解析

在日常软件开发场景中&#xff0c;时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志&#xff0c;到供应链系统的物流节点时间戳&#xff0c;时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库&#xff0c;其日期时间类型的…...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂

蛋白质结合剂&#xff08;如抗体、抑制肽&#xff09;在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上&#xff0c;高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术&#xff0c;但这类方法普遍面临资源消耗巨大、研发周期冗长…...

Go 语言接口详解

Go 语言接口详解 核心概念 接口定义 在 Go 语言中&#xff0c;接口是一种抽象类型&#xff0c;它定义了一组方法的集合&#xff1a; // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的&#xff1a; // 矩形结构体…...

将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?

Otsu 是一种自动阈值化方法&#xff0c;用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理&#xff0c;能够自动确定一个阈值&#xff0c;将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...

vue3 定时器-定义全局方法 vue+ts

1.创建ts文件 路径&#xff1a;src/utils/timer.ts 完整代码&#xff1a; import { onUnmounted } from vuetype TimerCallback (...args: any[]) > voidexport function useGlobalTimer() {const timers: Map<number, NodeJS.Timeout> new Map()// 创建定时器con…...

土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等

&#x1f50d; 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术&#xff0c;可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势&#xff0c;还能有效评价重大生态工程…...

什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南

文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/55aefaea8a9f477e86d065227851fe3d.pn…...

Java多线程实现之Thread类深度解析

Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...

管理学院权限管理系统开发总结

文章目录 &#x1f393; 管理学院权限管理系统开发总结 - 现代化Web应用实践之路&#x1f4dd; 项目概述&#x1f3d7;️ 技术架构设计后端技术栈前端技术栈 &#x1f4a1; 核心功能特性1. 用户管理模块2. 权限管理系统3. 统计报表功能4. 用户体验优化 &#x1f5c4;️ 数据库设…...