将http://mywebsite.com重定向到http://www.mywebsite.com

时间:2012-02-02 16:25:06

标签: asp.net

我在VS2010中使用C#编写了一个解决方案。当我在浏览器中输入http://www.mywebsite.com时,我能够成功显示我的网站。当我在浏览器中输入http://mywebsite.com时,我能够显示我的网站但有一些CSS问题。因为在我的代码中我有一些设置文件,我的网站被识别为'http://www.mywebsite.com'。这就是故事。

我的问题是:如果用户正在键入http://mywebsite.com,是否有办法重定向到http://www.mywebsite.com

例如,如果您输入http://google.com,它会自动重定向到http://www.google.com

感谢。

2 个答案:

答案 0 :(得分:0)

将此添加到web.config:

<rewrite>
<rules>
    <rule name="Redirect mywebsite.com to www" patternSyntax="Wildcard" stopProcessing="true">
        <match url="*" />
        <conditions>
            <add input="{HTTP_HOST}" pattern="mywebsite.com" />
        </conditions>
        <action type="Redirect" url="http://www.mywebsite.com/{R:0}" />
    </rule>
</rules>
</rewrite>

在代码隐藏中,您还可以使用之类的内容(未经测试)

if(!Request.Url.Host.StartsWith("www"))
    Response.Redirect("http://www.mysite.com/" + Request.Url.LocalPath);

但是必须在MasterPage上的每个页面上(如果有的话)或在Global.asax中稍作修改

答案 1 :(得分:0)

查看Iirf:

http://iirf.codeplex.com/

在您的服务器上安装后,创建一个名为Iirf.ini的ini文件,其中包含以下内容:

RewriteEngine ON 
StatusInquiry ON RemoteOk 
RewriteCond %{HTTP_HOST} ^mywebsite.com [I] 
RedirectRule ^/(.*)$ http://www.mywebsite.com/$1 [R=301]

将文件复制并粘贴到根网页文件夹EG:httpdocs

这将完成工作。