可以将 CNAME 指向带有查询参数的参数化 URL 吗?

Posted

技术标签:

【中文标题】可以将 CNAME 指向带有查询参数的参数化 URL 吗?【英文标题】:Can a CNAME be pointed to a paramterised URL with query params? 【发布时间】:2021-12-24 12:52:15 【问题描述】:

gameid123.com 的 CNAME 是否可以指向如下 URL:

    my_other_website.com/games/gameid123 my_other_website.com/games?nameid=gameid123 my_other_website.com/games/gameid123?gameid=gameid123

这样每当用户尝试访问gameid123.com 时,它就会打开上述网址之一作为其主页。

如果以上都做不到,那我有什么办法解决这个问题呢?

gameid123.com/some_api_call/someParam1?blah=blah1 这样的请求应该解析为my_other_website.com/games/gameid123/some_api_call/someParam1?blah=blah1

【问题讨论】:

【参考方案1】:

CNAME 只能指向另一个主机(不涉及路径/查询)。但是,您可以通过多种方式让传入请求重定向(或重写)传入请求。

解决方案取决于您是希望用户最终访问my_other_website(重定向)还是希望所有请求都通过gameid123.com(重写)。

【讨论】:

我想要,所有请求都来自 gameid123.com 重写(或转发)请求有大量的解决方案。这取决于您使用的服务器/技术,以及您是否控制my_other_website 服务器。我建议对此进行研究,或发布一个包含这些详细信息的新问题。

以上是关于可以将 CNAME 指向带有查询参数的参数化 URL 吗?的主要内容,如果未能解决你的问题,请参考以下文章

带有指向 Cloudflare 的 CNAME 的 SSL

带有 LIKE 和 IN 条件的参数化查询

带有几个可选搜索词的参数化查询

替换参数以指向 lambda 表达式中的嵌套参数

使用带有休眠 SQL 查询的多列的参数化 IN 子句

在 Python 2.7 中使用带有 mysql.connector 的参数化查询