Für Suchmaschinen kann es sinnvoll sein, "nur eine Startseite" zu haben. Das bedeutet, dass für die Bots "http://www.domainname.de/" und "http://www.domainname.de/default.aspx" zwei unterschiedliche Websites darstellen, auf denen sich natürlich die gleichen Inhalte befinden - die Folge: es wird ein Duplikat erkannt.
Benutzt man das Sitemap-Control in ASP.NET 2.0, gibt es da aber ein Problem:
"1.0" encoding="utf-8" ?>
"http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
"~/Default.aspx" title="dotnet.job Portal" >
"~/Contact.aspx" title="Kontakt" />
So funktioniert alles prima, es wird aber auf default.aspx verlinkt (auf der Kontaktseite), was zu oben angesprochenen Problemen führen kann. Benutzt man nun stattdessen
"1.0" encoding="utf-8" ?>
"http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
"~/" title="dotnet.job Portal" >
"~/Contact.aspx" title="Kontakt" />
führt das zum nächsten Problem: befindet man sich auf der default.aspx respektive auf / - dann erkennt das Control das nicht, d.h. ~/ kann es selbst nicht zuordnen. Abhilfe schafft hier:
"1.0" encoding="utf-8" ?>
"http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
"~/" title="dotnet.job Portal" >
"~/Contact.aspx" title="Kontakt" />
"~/Default.aspx" title="Startseite" />
Das ist zwar nicht perfekt, weil man so nie "ins Root" kommt, aber suchmaschinentechnisch ist es auf jeden Fall der bessere Weg - und für den Benutzer ergibt sich ja auch kein Nachteil, außer dass er auf der Startseite einen Link auf selbige findet.