misatron / letsencrypt-client
ACME v2 的 Let's Encrypt 客户端库
1.0.0-beta2
2020-03-26 13:40 UTC
Requires
- php: ^7.2
- ext-openssl: *
- guzzlehttp/guzzle: ^6.5
- psr/log: ^1.1
- spatie/enum: ^2.3
- webmozart/assert: ^1.6
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.16
- mikey179/vfsstream: ^1.6
- php-coveralls/php-coveralls: ^2.2
- phpunit/phpunit: ^8.5
- squizlabs/php_codesniffer: ^3.5
This package is auto-updated.
Last update: 2024-09-09 01:04:47 UTC
README
安装
使用 Composer 安装此包
composer require misantron/letsencrypt-client
基本用法
使用默认值创建客户端实例
use LetsEncrypt\Client; $client = new Client($accountKeysPath, $certificatesPath);
默认情况下,客户端使用 api 测试环境。
要切换到生产模式,您可以将第三个参数传递给客户端构造函数,并使用 false
值
use LetsEncrypt\Client; $client = new Client($accountKeysPath, $certificatesPath, false);
账户方法
$client->account()->create(array $emails)
$client->account()->get()
$client->account()->getOrCreate(array $emails)
$client->account()->update(array $emails)
$client->account()->keyRollover()
$client->account()->deactive()
订单方法
$client->order()->create(Account $account, string $basename, array $subjects, Certificate $certificate)
$client->order()->get(Account $account, string $basename, array $subjects, KeyType $keyType)
$client->order()->getOrCreate(Account $account, string $basename, array $subjects, Certificate $certificate)
$client->order()->getPendingHttpAuthorizations(Account $account, Order $order)
$client->order()->getPendingDnsAuthorizations(Account $account, Order $order)
$client->order()->verifyPendingHttpAuthorizations(Account $account, Order $order, string $identifier)
$client->order()->verifyPendingDnsAuthorizations(Account $account, Order $order, string $identifier)
$client->order()->getCertificate(Account $account, Order $order, string $basename, KeyType $keyType)
$client->order()->getCertificateContent(string $basename, KeyType $keyType)
$client->order()->getCertificateExpirationDate(string $basename, KeyType $keyType)
$client->order()->revokeCertificate(Account $account, string $basename, KeyType $keyType, RevocationReason $reason)
高级用法
日志记录
如果您需要获取一些调试信息或分析服务器交互
use LetsEncrypt\Client; use LetsEncrypt\Logger\Logger; use LetsEncrypt\Logger\LogStrategy; $strategy = LogStrategy::errorsOnly(); // $logger is an instance of PSR-3 logger (\Psr\Log\LoggerInterface) $clientLogger = new Logger($logger, $strategy); $client = new Client($accountKeysPath, $certificatesPath, true, $clientLogger);
日志策略
LogStrategy::requestsOnly()
仅记录请求数据LogStrategy::errorsOnly()
仅记录失败(400/500)请求(请求数据/响应数据)LogStrategy::debugMode()
记录所有请求(请求数据/响应数据)