fix: 修复使用代理的情况下申请证书失败的bug

pull/148/head
xiaojunnuo 2024-08-21 10:34:50 +08:00
parent ab7a1673ff
commit 95122e2860
2 changed files with 16 additions and 1 deletions

View File

@ -3,6 +3,7 @@
*/
const util = require('./util');
const { log } = require('./logger');
/**
* AcmeApi
@ -104,6 +105,16 @@ class AcmeApi {
/* Set account URL */
if (resp.headers.location) {
this.accountUrl = resp.headers.location;
const mapping = this.http.urlMapping;
if (mapping.mappings) {
// eslint-disable-next-line guard-for-in,no-restricted-syntax
for (const key in mapping.mappings) {
const url = mapping.mappings[key];
if (this.accountUrl.indexOf(url) > -1) {
this.accountUrl = this.accountUrl.replace(url, key);
}
}
}
}
return resp;

View File

@ -43,7 +43,11 @@ export class AcmeService {
}
async getAccountConfig(email: string): Promise<any> {
return (await this.userContext.getObj(this.buildAccountKey(email))) || {};
const conf = (await this.userContext.getObj(this.buildAccountKey(email))) || {};
if (conf.accountUrl?.indexOf("letsencrypt.proxy.handsfree.work")) {
conf.accountUrl = conf.accountUrl.replace("letsencrypt.proxy.handsfree.work", "acme-v02.api.letsencrypt.org");
}
return conf;
}
buildAccountKey(email: string) {