You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Namecheap子域名与Netlify站点配合实现正常访问

子域名绑定Netlify站点的后续配置指导

已完成的操作

  • 通过Namecheap API成功创建子域名thisisnewtestsubdomain.thisisthemaindomain.com的DNS记录(但当前记录值指向主域名,需修正)
  • 通过Netlify API创建站点并指定了自定义域名

需要补充的配置步骤

1. 获取Netlify站点的默认域名

调用create_netlify_site接口成功后,返回的JSON数据中domain字段即为Netlify分配的默认站点域名(格式如your-site-name.netlify.app),需记录该值。

2. 修正Namecheap的DNS记录

你之前的代码中创建CNAME记录时,Address参数填的是主域名thisisthemaindomain.com,这会导致域名无法指向Netlify站点。需要通过API或手动更新该记录:

API方式修改(调整现有代码)

修改register_subdomain函数中的参数,将Address替换为Netlify的默认域名,同时注意使用正确的DNS记录添加命令:

def update_subdomain_dns(domain_name, subdomain, netlify_domain):
    sld = domain_name.split('.')[0]
    tld = domain_name.split('.')[1]
    params = {
        'ApiUser': api_user,
        'ApiKey': api_key,
        'UserName': username,
        'Command': 'namecheap.domains.dns.addHost',
        'ClientIp': '',
        'SLD': sld,
        'TLD': tld,
        'HostName': subdomain,
        'RecordType': 'CNAME',
        'Address': netlify_domain,
        'TTL': '1800'  # 设置为30分钟,加快DNS生效速度
    }

    response = requests.get(base_url, params=params)
    if response.status_code == 200:
        if 'DomainDNSSetHostsResult IsSuccess="false"' in response.text:
            print("Failed to update DNS record. Error:", response.text)
        else:
            print(f"Subdomain DNS updated to point to {netlify_domain} successfully.")
    else:
        print("Failed to connect to Namecheap API.")

# 使用示例
main_domain = 'thisisthemaindomain.com'
new_subdomain = 'thisisnewtestsubdomain'
netlify_default_domain = 'your-site-name.netlify.app'  # 替换为实际获取的Netlify域名
update_subdomain_dns(main_domain, new_subdomain, netlify_default_domain)

手动修改方式

登录Namecheap后台,找到主域名的DNS管理页面:

  • 找到之前创建的thisisnewtestsubdomain CNAME记录
  • 将记录值修改为Netlify的默认域名your-site-name.netlify.app
  • 保存更改

3. 验证DNS生效

DNS记录更新后通常需要10-30分钟生效,可通过命令行工具验证:

nslookup thisisnewtestsubdomain.thisisthemaindomain.com

如果返回的地址包含Netlify的服务器IP,说明DNS已生效。

4. 确认Netlify域名配置并开启HTTPS

登录Netlify后台,进入对应站点的「Domain settings」页面:

  • 确认自定义域名thisisnewtestsubdomain.thisisthemaindomain.com状态显示为「Verified」
  • 开启「Force HTTPS」选项,Netlify会自动签发免费的SSL证书,确保站点可通过HTTPS访问

额外说明

  • 如果你选择将子域名委托给Netlify DNS(让Netlify完全管理该子域名的DNS),操作会更复杂:需要在Namecheap添加NS记录,将子域名的DNS服务器指向Netlify提供的NS地址。但仅绑定站点的需求下,修改CNAME记录的方式更简单,足够满足需求。
  • 后续通过Netlify API完成文件上传部署后,直接访问子域名即可打开你的站点。

内容的提问来源于stack exchange,提问作者Axe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 03:18:35