mirror of
https://github.com/certimate-go/certimate.git
synced 2026-04-26 05:05:56 +03:00
[GH-ISSUE #450] [Feature] 宝塔站点和管理后台证书设置 #278
Labels
No labels
announcement
backlog
bug
declined
documentation
duplicate
enhancement
good first issue
good first issue
help wanted
invalid
pull-request
question
stale
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/certimate#278
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @fcwys on GitHub (Feb 12, 2025).
Original GitHub issue: https://github.com/certimate-go/certimate/issues/450
功能描述
希望完善支持宝塔站点和管理面板设置证书接口。最新测试版宝塔这个接口只针对PHP站点有效,新接口是
/ssl?action=SetBatchCertToSite,此接口支持所有类型站点设置,可考虑再流程编排输入框支持分号设置多个站点。设置宝塔站点证书流程如下:
1、上传SSL证书到宝塔,获取证书hash;
2、通过新接口绑定证书到站点(支持批量);
上传证书接口信息(POST):
路径:
/ssl/cert/save_cert请求表单参数:
响应示例:
设置站点证书接口信息(POST):
路径:
/ssl?action=SetBatchCertToSite请求表单参数:
响应示例:
设置面板SSL接口信息(POST):
路径:
/config?action=SavePanelSSL请求表单参数:
响应示例:
动机
目前最新测试版已实现宝塔站点设置,但不够完善 #448 #434
替代方案
无
其他信息

最新测试版0.3.0-alpha.12设置宝塔站点失败截图:
@fudiwei commented on GitHub (Feb 12, 2025):
/site?action=SetSSL这个接口是已经没有了吗?@fcwys commented on GitHub (Feb 12, 2025):
经过这几天测试这个接口仅针对PHP分类站点有效,其他分类会报错。我自己用python写的工具,目前使用上传然后绑定的接口测试是正常的,新接口批量绑定站点也比较方便,所以建议使用新接口。
此外,如果可能,选择部署站点建议从接口获取站点列表,采用多选下拉框的方式(如下图)会更方便
获取证书匹配的站点接口:
/ssl?action=GetSiteDomain请求表单(证书域名):
响应示例:
宝塔SSL绑定站点页面:
@fudiwei commented on GitHub (Feb 13, 2025):
报错内容就是截图里的那个是 404 是吗?按我的理解这种 API 接口即便报错,也不应该是返回一个 404 的 HTML 页面才对。
@fcwys commented on GitHub (Feb 13, 2025):
404这个是我用最新版测试的,不知道为啥是404,我的面板接口是类似
https://bt.aaa.com:9000这种格式,不知道是不是识别有啥问题,接口白名单也加了。新老接口这个是我Python暂时写的小工具设置证书测试的。
另外可否了解下您那边使用这个接口是宝塔哪个版本呢?
我目前使用的是宝塔9.4.0
@fcwys commented on GitHub (Feb 24, 2025):
经过测试,
/site?action=SetSSL和/ssl/cert/save_cert接口仍然出现404的情况,如图为Certimate错误日志:抓包进行Certmate和宝塔面板原生
/ssl/cert/save_cert接口请求进行对比如下,似乎是请求类型差异导致:请求参数对比:


请求头对比:

