当前位置:  开发笔记 > 后端 > 正文

有没有办法在网站上始终要求或强制"www"子域名?

如何解决《有没有办法在网站上始终要求或强制"www"子域名?》经验,为你挑选了2个好方法。

我想阻止用户去说example.com和只去www.example.com,我们正在使用IIS 6,所以说他们去example.com它可以在www.example.com等钉

这是一个设置的地方,否则我将不得不编写代码的时候检查的子域时,他们的土地,并相应地重定向?

编辑:我知道最好的办法是,如果用户启动一个进程(这是LMS),而在跟踪不为.asmx文件工作URL的万维网从www前缀,但无论出于何种原因,离开那就是为什么我试图迫使"WWW",因为如果有人没有它,然后他们想知道为什么跟踪不起作用.



1> Waleed Eissa..:

如果您正在使用ASP.NET创建一个HttpModule,请处理BeginRequest事件并在您的处理程序中添加此代码:

HttpApplication application = (HttpApplication)source;
HttpContext context = application.Context;

if (context.Request.Url.Host == "example.com")
{
context.Response.Clear();
context.Response.Status = "301 Moved Permanently";
context.Response.AddHeader("Location", "http://www.example.com" + context.Request.RawUrl);
}

请注意,我没有使用Response.Redirect(),这是为了SEO而完成的,因为Response.Redirect()总是返回状态302,这意味着对象被临时移动,而状态301表示对象被永久移动,这将保持您的页面的PageRank不在www和非www版本之间划分(如果搜索引擎爬虫可以使用www和非www URL访问页面,它们将在两者之间划分你的PageRank,因此搜索引擎抓取工具使用301,并将您的PageRank仅保留到您网站的www版本).



2> Oskar Duvebo..:

由于两个记录都已指向正确的服务器...

......你可以简单地建立一个新的网站在IIS(服务器版本需要),并让它只响应example.com(主机头设置),并把它重定向到URL通缉(检查重定向在主目录选项卡网址并输入www.example.com).然后原始站点应该处理它(你可以设置它的主机头来回答www.example.com更具体).

如果您无法在Web服务器上执行此操作,则您的发布防火墙应该能够,或者您可以考虑替换它.您的DNS提供商也可以提供(双关语不打算)重定向服务(基本上是做同样的事情,如以上对你我猜).

推荐阅读
jerry613
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有