gpt4 book ai didi

c# - 子域作为查询字符串

转载 作者:行者123 更新时间:2023-12-01 23:18:27 24 4
gpt4 key购买 nike

ASP.net C# 中有没有办法将子域视为查询字符串?

我的意思是,如果用户输入 london.example.com,那么我可以读到他正在寻找 london 数据,并基于该数据运行查询。 example.com 目前没有任何子域。

最佳答案

这是一个 DNS 问题,而不是 C#/ASP.Net/IIS 问题。理论上,您可以使用 wildcard DNS record 。在实践中,您会从以下链接遇到此问题:

The exact rules for when a wild card will match are specified in RFC 1034, but the rules are neither intuitive nor clearly specified. This has resulted in incompatible implementations and unexpected results when they are used.

所以你可以尝试一下,但结果不太可能好。此外,您可以摆弄一些事情,直到它在您的测试环境中正常运行,但这不能保证事情对公众来说一切顺利。您可能会更好地选择一个具有 API 的良好 DNS 提供商,并编写代码以使用 API 来保持各个 DNS 条目同步。您还可以设置自己的公共(public) DNS 服务器,不过我强烈建议使用知名且信誉良好的商业 DNS 主机。

您可能遇到的另一个问题是 TLS/SSL 证书(因为当然您将使用 HTTPS。对吗?对!?)您可以尝试通配符证书可能没问题,但根据您所做的其他操作,您可能会发现它不够;突然间,您需要为数据库中的每个城市条目提供单独的 SSL 证书,即使通过 Let's Encrypt 服务,这也可能是一个真正的痛苦

如果您尝试一下,IIS 可以轻松地根据通配符主机名将请求映射到您的 ASP.Net 应用程序,并且 ASP.Net 本身也可以轻松地从请求中读取和解析主机名,并且基于此返回不同的结果。 IIS URL 重写应该能够对此有所帮助,尽管我不确定您是否可以基于此属性在 C#/ASP.Net 中进行库存 MVC 路由。

关于c# - 子域作为查询字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53662566/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com