iis | seo | web-config | rewrite-rule | aspnet

Redirect non-www urls to www urls

When considering SEO, either you have to stick with www versioned url or non-www URLs. Having both accessible for a domain is a bad practice.

Abhith Rajan
Abhith RajanAugust 12, 2017 · 2 min read · Last Updated:

When considering SEO, either you have to stick with www prefixed url or non-www urls. Having both accessible for a domain is a bad practice.

After I setup my website, when I checked google for my site status, it was like below,

google search
google search

If you wonder why I searched like site:mydomain on google, this will list all the search results under the domain we specified.

See the highlighted section. If we search again to see the omitted results. We will see search result like this,

search
search

As you can see, both the url get indexed and one is omitted since it isn’t relevant.

So what next,

You have to choose which pattern you gonna stick to. I initially thought to go with non-www but then read the article SETTING UP UMBRACO TO ALWAYS USE WWW LINKS and decided to go with www.

And to redirect non-www to www version, I added the rewrite rule as mentioned in the article. My Code look like this,

<system.webServer>
    <rewrite>
      <rules>
        <clear />
        <rule name="Redirect Non WWW" stopProcessing="true" xdt:Transform="Insert">
          <match url=".*" />
          <conditions>
            <add input="{HTTP_HOST}" pattern="^(?!www)(.*)$" />
          </conditions>
          <action type="Redirect" redirectType="Permanent" url="https://www.{C:1}/{R:0}" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>

Noticed the xdt:Transform=“Insert” in the line,

<rule name="Redirect Non WWW" stopProcessing="true" xdt:Transform="Insert">

That is because I added this rule in my Web.Release.config, Which will add the rule to the Web.config automatically during publishing. The reason for which is explained in one of my article INSERTING REWRITE RULE IN RELEASE CONFIG.

This page is open source. Noticed a typo? Or something unclear?
Improve this page on GitHub


Abhith Rajan

Written byAbhith Rajan
Abhith Rajan is a software engineer by day and a full-stack developer by night. He's coding for almost a decade now. He codes 🧑‍💻, write ✍️, learn 📖 and advocate 👍.
Connect

Is this page helpful?

Related ArticlesView All

Related StoriesView All

Related Tools & ServicesView All

metatags.io

Meta Tags — Preview, Edit and Generate

With Meta Tags you can edit and experiment with your content then preview how your webpage will look on Google, Facebook, Twitter and more!
en.ryte.com

Robots.txt generator - Create a robots.txt file instantly

Generate a robots.txt file for free with this easy-to-use tool. Make sure search engine crawlers are crawling and indexing your site.