Domain in Unterverzeichnis umleiten (.NET-Hosting)
Analog zu 'mod_rewrite' auf Linux-Hostings steht Ihnen ab Windows Server 2008 / IIS 7 eine ähnliche Funktion zur Verfügung. Mittels URL-Rewriting können Sie nun auf einem Windows-Hosting ebenfalls serverseitig ein alternatives Startverzeichnis als 'httpdocs' definieren.
Notieren Sie hierzu folgenden Code in Ihre 'web.config'-Datei:
- <?xml version="1.0" encoding="utf-8"?>
- <configuration>
- <system.webServer>
- <httpErrors errorMode="Detailed"></httpErrors>
- <rewrite>
- <rules>
- <rule name="Imported Rule 1" stopProcessing="true">
- <match url="^(.*)$" ignoreCase="false"></match>
- <conditions>
- <!--Falls nur eine bestimmte Domain, zb. ein Alias, umgeleitet werden
- soll, entfernen sie die Kommentierung der nächsten Zeile und passen 'domain\.ch' gemäss Ihrem Alias an. -->
- <!--<add input="{HTTP_HOST}" pattern="^(ww+\.)?domain\.ch" ignoreCase="false" ></add> -->
- <add input="{URL}" pattern="^/<verzeichnis>/" ignoreCase="false" negate="true"/>
- </conditions>
- <action type="Rewrite" url="/<verzeichnis>/{R:1}"/>
- </rule>
- </rules>
- </rewrite>
- </system.webServer>
- </configuration>
Ersetzen Sie jeweils gem. obigem Beispiel die Werte für <verzeichnis> resp. 'domain.ch' und erfassen Sie Ihr gewünschtes Startverzeichnis, dies kann selbstverständlich auch ein weiteres Unterverzeichnis sein. Achten Sie einfach darauf, dass beide Werte identisch sind. Der eine Wert verweist auf das Verzeichnis, der andere verhindert, dass direkte Links auf dieses Verzeichnis eine Endlos-Schleife erzeugen. Der Punkt in der Domain muss zwingend mittels Backslash escaped werden (domain\.ch), um korrekt interpretiert zu werden.
Das Script müsste direkt nach der Erstellung greifen und wie notiert funktionieren.