SuperAPI AI 工具集

connect-domain

部署与运维

查看项目

更新于 10-25 08:08

技能介绍

该技能用于让一个自定义域名通过 HTTPS 正常服务于 Hostinger 上的网站,覆盖从确认现状到最终验证的完整流程。核心原则是:任何 DNS 变更都不能破坏已生效的记录,包括邮件(MX)、SPF、DKIM 和验证类 TXT 记录。

一、用途 将域名连接到 Hostinger 网站(Shared、Cloud、Agency 套餐),并完成 DNS 指向与 SSL 启用,使域名可通过 HTTPS 访问。

二、前置信息收集(只读) 先读取 search 返回的 inputSchema 再调用各操作;批量读取可用 multi-execute,步骤间以 $steps.<i>.<path> 传值。Hostinger Connector 将 hosting、agency-hosting、domains、dns 作为独立服务器,批量操作只能在同一服务器内串联;找不到操作时,请用户在该 Connector 中启用对应产品组。

  1. 网站:Shared/Cloud 用 hosting_websites_list(按 domain 子串匹配后取精确条目),Agency 用 agency-hosting_websites_list-plan,记录 username 与 order_id,或 details.uid 与 details.ipv4。域名尚无网站时,先确认用户所指的站点(常为 *.hostingersite.com)或用于创建网站的订单(hosting_orders_list、agency-hosting_orders_list)。
  2. 注册信息:domains_portfolio_get 仅对在 Hostinger 注册的域名有效,其 name_servers 显示由谁管理 DNS;Hostinger 自有域名服务器以 dns-parking.com 结尾。
  3. 当前生效 DNS(用于确定需保留的记录):dig +short NS/A/CNAME www/MX/TXT/CAA。

三、将域名挂载到主机 Shared/Cloud:

  • 新网站:若域名不在本账户,先运行 hosting_domains_verify-ownership;若 is_accessible 为 false,把返回的 TXT 记录交给用户添加到现有记录旁,再重新验证(传播约需 10 分钟)。随后用 hosting_websites_create(域名不带 www.、order_id)创建,并每 10–15 秒轮询 hosting_websites_list-setups 直到 status: completed。
  • 从免费子域名迁移:Shared/Cloud 网站无法通过 API 改名。可在真实域名上新建网站并重新部署项目(WordPress 必须这样做,因其 URL 存于数据库);静态站点可用 hosting_domains_create-website-parked 将域名停靠到现有站点。
  • 别名(第二个域名指向同一站点):hosting_domains_create-website-parked。
  • 子域名(如 shop.example.com):hosting_domains_create-website-subdomain;www 属于主域名,不要作为子域名创建。 Agency:
  • agency-hosting_domains_link-to-website 将域名添加到站点。
  • agency-hosting_domains_change-website 替换主域名(如免费子域名),旧名称立即停止服务,需先确认。

四、将 DNS 指向 Hostinger DNS 已在 Hostinger(域名服务器以 dns-parking.com 结尾):创建网站通常会自动写入记录。用 dns_records_list 读取区域;@ 与 www 已指向站点则不改动。编辑前记录最新的 dns_snapshots_list 条目,dns_snapshots_restore 可回滚到该快照。注意 dns_records_update 默认 overwrite: true,会删除同名的所有同类型记录;在 @ 处添加 TXT 时这样做会清掉 SPF 与验证记录。添加时应传 overwrite: false,仅在有意替换某组记录时用 true,并先对同一载荷运行 dns_records_validate。 DNS 在别处(Hostinger 注册但使用其他域名服务器,或在其他注册商注册),由用户二选一:

  • 切换域名服务器到 Hostinger:Hostinger 将管理所有记录。切换前先把当前 DNS 中网站之外的记录(MX、TXT、服务类 CNAME)用 dns_records_update(overwrite: false)复制到 Hostinger 区域,否则切换后邮件会中断。不同域名的域名服务器对可能不同(ns1/ns2.dns-parking.com、solar/lunar.dns-parking.com 等),应使用 hPanel 为该域名显示的那一对,不要猜测。Hostinger 注册的域名用 domains_portfolio_update-nameservers 应用,否则由用户在注册商处修改。
  • 保留现有 DNS 提供商,只改网站记录:@ 的 A 记录与 www 的 CNAME(或 A)。Agency 站点指向 details.ipv4;Shared/Cloud 站点指向 Hostinger 区域中该域名的目标(dns_records_list),若该区域不存在则用 hPanel 为网站显示的 IP。此项由用户在其 DNS 提供商处修改。

五、SSL 与 HTTPS 等 dig 显示域名已解析到 Hostinger 后再开始(证书机构会校验域名与服务器)。 Shared/Cloud:hosting_ssl_status;未激活则调用 hosting_ssl_install 并轮询状态直到 active(或 failed 并给出 last_error),再用 hosting_ssl_toggle-https-redirect 设 is_enabled: true(无证书时返回 422)。 Agency:对每个域名调用 agency-hosting_ssl_install-website,然后轮询 agency-hosting_ssl_website-status。每个域名七天内允许三次设置、每分钟一次请求,应确保 DNS 正确后一次安装,不要循环重试。 若 @ 处存在不允许 letsencrypt.org 的 CAA 记录会阻止签发,用户需在现有记录旁添加 0 issue "letsencrypt.org"。

六、验证 运行 dig +short A DOMAIN、dig +short A www.DOMAIN、curl -sSI https://DOMAIN/ 并 grep HTTP/platform/location、curl -sSI http://DOMAIN/ 并 grep HTTP/location、dig +short MX DOMAIN。完成条件:两个名称均解析到 Hostinger,HTTPS 返回 platform: hostinger,HTTP 跳转到 HTTPS,且 MX 与第一步一致。域名服务器变更可能需要 24–48 小时才在所有解析器生效;记录仍旧时应报告待生效项及复查命令,而不是长时间轮询。

七、限制与注意

  • 每次写入都会改变公网可见状态,变更前需说明并获得用户同意。
  • 名称被拒绝为未知时,应按步骤用途重新搜索(如“dns records”)。
  • Shared/Cloud 网站无法通过 API 改名。
  • 证书安装存在频率限制。
  • 域名服务器对以 hPanel 显示为准。