我想知道像谷歌网站和shopify这样的网站如何允许客户创建一个网站,然后将其链接到自己的域名?谷歌网站允许用户在用户提供的域名上创建自己的网站,shopify允许用户创建自己的电子商务网站--再一次,他们可以提供自己的域名,用于访问创建的网店。
在这两种情况下,该网站表面上都是通过在浏览器中键入用户域名来访问的,尽管该网站实际上是由第三方公司(Google、Shopify等)托管的。
这怎么可能。有没有人能洞察这件事(很可能)是如何完成的?
发布于 2010-07-11 13:40:55
Google要求您创建CNAME DNS记录,以将您的域名指向他们的主机记录。
例如:
shop.yourdomain.com IN CNAME ghs.google.com当您的浏览器转到shop.yourdomain.com时,DNS记录将您的请求重定向到服务器ghs.google.com。HTML中的主机头显示浏览器正在请求shop.yourdomain.com,而google的服务器看到了这一点,并将其指向适当的内容。
也将以同样的方式工作.
发布于 2010-07-11 07:49:24
HTTP1.0请求有一个Host头,浏览器在URL中填充实际主机名,服务器解析以找出哪个虚拟主机应该处理请求。
发布于 2010-07-11 12:12:26
这很简单。主机提供商设置运行在给定IP地址上的HTTP服务器。假设是82.10.11.12。
我们的web服务器可以通过HTTP为82.10.11.12提供请求。这是由DNS管理的。我可以拥有指向此IP的任意数量的DNS条目(A记录),例如:
www.mysite.com. IN A 82.10.11.12
anothersite.com. IN A 82.10.11.12
awesomesite.com. IN A 82.10.11.12
rubbishsite.net. IN A 82.10.11.12
etc如果您的web浏览器支持HTTP/1.1,则当您连接到此站点时,您在浏览器中键入的地址将发送到web服务器。这被称为主机头。然后,web浏览器提供与您在浏览器中输入的名称相匹配的虚拟主机。这就是基于名称的虚拟主机的工作方式。
注意,这之所以成为可能,是因为HTTP/1.1而不是第一个答案中提到的1.0。
有关HTTP的一个非常简单的概述,请参见:http://www.jmarshall.com/easy/http
要了解更多细节,请访问RFCs。
https://serverfault.com/questions/159317
复制相似问题