Asp.net ile kodladığınız bir internet sitesinin www.siteadi.com ve siteadi.com olarak iki farklı sürümü olması SEO açısından zararlı bir durum olduğu için birisinden birisini seçmek gerekiyor. url uzunluğunun kısa olması bence tercih sebebi olsa da insanlar www yazmaya çok alışkın oldukları için genel tercih tam tersi yönde oluyor. Site içerisinde linkleri istediğiniz kadar www yazarak verseniz de dışarıdan verilen url'leri kontrol etmek mümkün olmadığı için site içerisinde bir yönlendirme sistemi yazmak gerekiyor. IIS'te url'leri yeniden yazabildiğiniz yerlerden birisi url rewrite aracı, diğeri ise web.config dosyası.
<system.webServer>
<rewrite>
<rules>
<rule>
...
</rule>
</rules>
</rewrite>
</system.webServer>
Başında www olmadan sitenize gelen yönlendirmeleri otomatik olarak www'li versiyona yönlendiren web.config düzenlemesini şu şekilde yapabilirsiniz
www yoksa www'ye yönlendirme kuralı
<rule name="wwwYonlendir" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTP_HOST}" pattern="^siteadi.com$" />
</conditions>
<action type="Redirect" url="http://www.siteadi.com/{R:0}" redirectType="Permanent" />
</rule>
www varsa www olmayan url'ye yönlendir ve www ön ekini sil
Eğer www ön ekini sitenizde kullanmak istemiyorsanız yukarıdaki düzenlemenin tam tersi şekilde www ön ekini otomatik olarak kaldıran web.config kuralı şu şekilde:
<rule name="wwwKaldir" stopProcessing="false">
<match url="(.*)" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{HTTP_HOST}" pattern="^(www\.)(.*)$" />
</conditions>
<action type="Redirect" url="https://{C:2}{REQUEST_URI}" redirectType="Permanent" />
</rule>