开发者社区 > 云原生 > Serverless > 正文

请教一个域名问题,我在域名解析中设置了 a.xxx.com 和 b.xxx.com,两者

请教一个域名问题,我在域名解析中设置了 a.xxx.com 和 b.xxx.com,两者 CNAME 指向其实都一样,分别绑定到两个 FC,后来我嫌麻烦,就在域名解析将 a 和 b 的 CNAME 都删了,只添加了 *.xxx.com 通配符。FC 中的域名绑定没改,但是过一会估计解析生效然而函数访问不了了。

我后来删除掉通配符 *.xxx.com,重新用 a.xxx.com 和 b.xxx.com,生效后又能成功访问函数了。 请问是否不允许域名设置通配符这么用?

展开
收起
山海行 2023-06-10 09:55:44 278 0
6 条回答
写回答
取消 提交回答
  • 支持 *.xxxx.com 这种通配符 https://help.aliyun.com/document_detail/90763.html?spm=a2c4g.52895.0.0.1e9d772fsRj9ck

    此答案来自钉钉群“阿里函数计算官网客户"

    2023-06-10 19:07:19
    赞同 展开评论 打赏
  • 北京阿里云ACE会长

    1 在域名解析中使用通配符是可以的,但需要注意以下几点:

    通配符只能用于解析子域名,不能用于根域名,例如 *.example.com 是合法的,但 *.com 是不合法的。

    在使用通配符时,必须保证所有子域名都要正确解析到相应的IP地址或CNAME记录,否则可能会导致访问异常。

    如果您在使用通配符时出现了问题,建议您检查 DNS 解析是否正确,以及是否存在 DNS 缓存等问题。

    根据您的描述,您在解析中设置了 a.xxx.com 和 b.xxx.com,后来又使用通配符 *.xxx.com 进行解析,但访问函数时出现了问题。这可能是因为在您删除 a.xxx.com 和 b.xxx.com 的 CNAME 记录后,FC 中的域名绑定没有及时更新,导致访问出现问题。当您重新使用 a.xxx.com 和 b.xxx.com 进行解析后,FC 中的域名绑定也得到了更新,访问问题得到了解决。

    因此,建议在进行域名解析时,仔细检查解析记录,并确保所有记录都正确指向相应的IP地址或CNAME记录,以确保访问正常。同时,也需要注意 DNS 解析缓存等因素对访问的影响。

    2023-06-10 16:22:18
    赞同 展开评论 打赏
  • 在域名解析中设置通配符是允许的,但是需要注意以下几点:

    1. 通配符只能匹配未被其他记录覆盖的子域名,如果已经存在 a.xxx.com 和 b.xxx.com 的解析记录,那么通配符将不会生效。
    2. 通配符只能匹配一级域名,例如 *.xxx.com 可以匹配 a.xxx.com 和 b.xxx.com,但是不能匹配 foo.bar.xxx.com。
    3. 当使用通配符解析时,需要确保所有子域名都使用相同的后端服务,否则可能会导致访问异常。

    在您的情况下,可能是因为在删除 a.xxx.com 和 b.xxx.com 的 CNAME 解析记录时,FC 中的域名绑定还在指向旧的解析记录,导致函数访问失败。建议在修改域名解析记录时,同时检查并修改后端服务的域名绑定,确保一致性。

    2023-06-10 14:18:15
    赞同 展开评论 打赏
  • 云端行者觅知音, 技术前沿我独行。 前言探索无边界, 阿里风光引我情。

    在域名解析中设置通配符可以将所有子域名都指向同一个 IP 地址,但是需要注意的是,通配符只能匹配到一级子域名,不能匹配到多级子域名。例如,*.example.com 可以匹配到 a.example.com、b.example.com,但是无法匹配到 a.b.example.com。

    在您的情况下,您将 a.xxx.com 和 b.xxx.com 的 CNAME 都删除,只添加了 *.xxx.com 通配符,那么所有子域名都会指向同一个 IP 地址,这可能会导致函数计算无法正确访问。因为函数计算的域名绑定是基于子域名的,如果所有子域名都指向同一个 地址,那么函数计算可能无法正确识别请求的子域名。

    因此,建议您在域名解析中设置具体的子名,而不是使用通配符。如果您需要绑定多个子域名到同一个 IP 地址,可以使用相同的 CNAME 记录,而不是为每个子域名都设置一个 CNAME 记录。这样可以减少配置的复杂度,并确保函数计算能够正确识别请求的子域名。

    需要注意的是, 解析可能存在缓存,如果您修改了 DNS 解析配置,可能需要等待一段时间才能生效。如果您遇到问题,可以尝试除 DNS 缓存或等待一段时间后再尝试访问。

    2023-06-10 11:54:43
    赞同 展开评论 打赏
  • 不断追求着最新的技术和趋势,在云技术的世界里,我不断寻找着新的机会和挑战,不断挑战自己的认知和能力。

    从您提供的信息来看,您在使用域名解析时添加了一个通配符 *.xxx.com,并将该通配符应用于两个不同的域名 a.xxx.com 和 b.xxx.com。这种做法是不被允许的,因为通配符应该用于匹配整个域名,而不是特定的子域名。

    当您删除了 a.xxx.com 和 b.xxx.com 的 CNAME 记录并将通配符应用于所有域名时,解析服务器会尝试将所有 xxx.com 域名解析为同一个 IP 地址。这可能会导致一些问题,例如无法正确访问特定函数,因为服务器无法区分不同的域名。

    正确的做法是只使用 specific-name-servers 和 specific-ip-addresses 来解析域名,而不是使用通配符。如果您需要解析多个子域名,请使用多个 CNAME 记录,而不是使用通配符。

    2023-06-10 11:54:43
    赞同 展开评论 打赏
  • 值得去的地方都没有捷径

    在 DNS 解析中添加通配符的方式可以使域名解析更加简单方便,但是需要注意以下几点:

    通配符记录不能与其他记录重叠,否则可能会出现意料之外的结果。

    通配符只能用于域名中的二级域名,不能用于顶级域名。

    添加通配符后需要等待一定时间后DNS才会生效,这个时间因地区和ISP有所不同,一般要等待1-2小时左右。

    在你的情况下,你添加了通配符后FC中的域名绑定没有改变,这导致你无法访问函数。这是因为你在添加通配符的同时删除了单独的 A 记录和 B 记录,通配符解析后将所有子域名都解析到同一地址,这样会出现一个问题,就是如果a和b两个子域名的记录没有完全一致,比如TTL不同、权重不一样等,那么就会导致因为解析到了不同的 IP 地址而出现问题。

    因此,建议你针对a和b两个子域名单独添加A记录,这样可以保证每个子域名都被正确解析到相应的 IP 地址。

    2023-06-10 11:25:15
    赞同 展开评论 打赏
滑动查看更多

快速交付实现商业价值。

热门讨论

热门文章

相关电子书

更多
创业公司的域名想象 立即下载
“域”见更美好的未来——域名筑梦互联网+ 立即下载
“域”感——《域名投资从入门到精通》 立即下载

相关镜像