站群在阿里云服务器上的应用

阿里云服务器

说的站群,大家都不陌生,就是由很多站点组成的网站,一些不太专业的站长会片面的认为不同域名组成的站点,其实这是错误的。

即使一个域名通过泛解析可以形成无数站点,这些站点形式是二级域名或者三级域名甚至是四级域名形成,这都是属于站点,所以,站群不是由不同域名直接组成,而是由站点组成,子站也属于站点。

下面讲一下,站群在阿里云服务器上的应用及管理,以我们研发的泛二级域名无限子站站群为例。

我们要在阿里云服务器上布局站群,而我们研发的泛二级域名站群,是由不同域名组成,也就是说有n个域名,域名数量不限制,每个域名都可以无限泛二级域名,俗称泛域名、泛站群。

第一步,要把n个域名都要进行泛解析到固定ip上,也就是我们购买的阿里云服务器的静态ip,记住,每个域名都要解析,如果域名比较多,上千域名,可以利用工具进行批量解析,一般官方都会提供,可以向官方客服索取。

第二步,登陆阿里云服务器,打开iis信息服务管理器,创建站点,在绑定域名哪里,一定设置一个空主机头,不要绑定具体某个域名,ip选择对,也和域名批量解析的ip保持一致。

这时就搭建好了站点,站群站点,非常简单。

讲一下传输原理,批量解析的域名怎么和云服务器之间传输的,要说下,单个域名解析时,一定注意每个域名在dns解析时,一定要用“*”表示,“@”是针对不带www的解析,类似一个二级域名而已,一定要区分好“*”和“@”的区别,很多站长还是不太清楚。

当用户通过域名请求时,dns服务器就是把用户的请求映射到对应的ip上,也就是云服务器上,每个云服务器至少有一个固定ip。用户的请求到达云服务器,由于设置了空主机头,任何一个域名都可以映射到对应的ip上,这时数据到达站点,这是利用编程语言对来自不同的域名进行处理和分发,不同域名利用程序控制找到相关的数据。

下面列举几个不同编程语言的接受域名的代码:

ASP代码

Request.ServerVariables("SERVER_NAME")

也可以

Request.ServerVariables("HTTP_HOST")

php代码

'APP_SUB_DOMAIN_DEPLOY'   =>    1, // 开启子域名配置

 'APP_SUB_DOMAIN_RULES'    =>    array(

 '*' =>    array('Test/Index','a=domain'), // 

 )

c#代码


string requestDomain = httpContext.Request.Headers["host"]; 

if (!string.IsNullOrEmpty(requestDomain)) 

  { 

if (requestDomain.IndexOf(":") > 0) 

 { 

requestDomain = requestDomain.Substring(0, requestDomain.IndexOf(":")); 

}  

else

requestDomain = httpContext.Request.Url.Host; 

}

}

这样不同域名,在数据库中请求不同的数据,就形成了不同站点,可能这些站点的模板都类似,但是数据不同,在搜索引擎“眼中”,模板相同,数据不同,站点仍然属于不同站点。很多站长认为会被搜索引擎惩罚,其实错误的观点,如果模板相同,内容不同也算是重复的话,类似wordpress、zblog、dedecms不都要受到惩罚了吗。

搜索引擎最重要的是内容,而不是网站页面长什么样子,用户主要获取的是内容,持续输出优质原创文章,才是优质站群的根本。

同理,不同站点在同一个云服务器上也不会受到惩罚,只要内容优质,不是那种垃圾内容,都可以在搜索引擎平台上获取较好的展现。