După ce am mutat un site dintr-un subdirector (Ex: http://exemplu.com/forum/) în root (în rădăcina domeniului Ex: http://exemplu.com/), este necesara o redirecționare 301 a vechilor URL-uri, acest lucru se poate face destul de simplu cu ajutorul Modulului URL Rewrite sau direct din fișierul web.config.

Spre exemplu în Windows Server: Avem domeniul http://exemplu.com/ și site-ul "forum" (cale default: C:\inetpub\wwwroot\forum\), care a fost mutat în rădăcina domeniului (cale default: C:\inetpub\wwwroot\). Redirecționarea de la http://exemplu.com/forum/) către http://exemplu.com se poate face în felul următor:

 In root păstram vechiul director "forum" (cale default: C:\inetpub\wwwroot\forum\), dacă nu exista, îl cream și îl numim exact cum a fost denumit inițial, în exemplu de față "forum".

Din consola IIS, Internet Information Services (IIS) Manager, în panoul din stanga Connections => Sites, selectăm Sites => Nume.site (în cazul nostru "exemplu.com") => Forum (directorul site-ului redirecționat), îl selectam și în fereastra din dreapta click pe Modulul Url Rewrite, în panoul din dreapta selectăm Actions => Add rules(s)..

 

URL Rewrite fig.4

Add Rule image

 

In fereastra care apare selectați Inbound Rule => Blank Rule.

 

Add Blank Rule

 

In fereasta Edit Inbound setam:

Requested URL => Does Not Match the Pattern

Using => Regular Expresions

Patern => ^forum/(.*)

Redirect URL => /{R:1}

Action type => Redirect

Redirect type => Permanent (301) - tipul redirectionari: redirectionare 301, 302, 303, 307

Bifati: Ignore case si Append query string

 

Redirectionare subdirector catre root

 

Trebuie să aveți instalat Modulul URL Rewrite, redirecționarea se poate face din fișierul web.config, editați fișierul adăugând codul (regula) de mai jos și puneți fișierul web.config în rădăcina directorului "forum" (cale default: C:\inetpub\wwwroot\forum\), dacă fișierul web.config nu exista îl creați cu notepad.

 

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="Redirectionare Subdirector catre Root" stopProcessing="true">
                    <match url="^forum/(.*)" negate="true" />
                    <action type="Redirect" url="/{R:1}" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>

 

Înlocuiți în fișierul web.config sau în setările Modulului Url Rewrite, denumirea subdirectorului "forum" cu denumirea corespunzătoare directorului pe care îl redirecționați, de pe serverul dvs.:

forum => Nume.Director - denumirea exacta a subdirectorul (site-ului) care a fost mutat și a cărui URL-uri doriți sa le redirecționați în rădăcina domeniului (root).