2015-06-15 3 views
0

Мне нужно сделать 301 переадресацию для всех старых ссылок, которые содержат (/CID-VALUE), например. www.example.com/folder1/folder2/CID-1234. Эта ссылка могла быть в любой папке, поэтому мне нужно что-то, что ловит все экземпляры CID, и переносимое значение, и перейдите на замененную ссылку с чем-то вроде ?cid=VALUE.Перенаправление ASP.NET 301, если содержит последнюю папку

Я работаю в ASP с VB.NET, поэтому использую файл web.config.

Вот код, который я в настоящее время используют для 301 перенаправляет

<rule name="Redirect" stopProcessing="true"> 
    <match url="^example(.*)" /> 
    <conditions> 
     <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /> 
    </conditions> 
    <action type="Redirect" url="/newexample/{R:1}" /> 
</rule> 

ответ

1

Ваша старая структура URL является /folder1/folder2/CID-1234, и я полагаю, что Folder1 и folder2 являются примерами и являются переменными.

<rule name="redirect-to-cid-page" stopProcessing="true"> 
    <match url="^([_0-9a-zA-Z\-]+)/([_0-9a-zA-Z\-]+)/([_0-9a-zA-Z\-]+)$" /> 
    <action type="Redirect" url="/new-cid-page.aspx?id={R:3}" statusCode="301" /> 
</rule> 

Так правило выше совпадений:

  • folder1 к {R:1} с expresssion ([_0-9a-zA-Z\-]+)
  • folder2 к {R:2} с expresssion ([_0-9a-zA-Z\-]+)
  • номер CID к {R:3} с expresssion ([_0-9a-zA-Z\-]+)

Для Folder1, folder2 и номер ИДС Я предполагаю, что они содержат латинские буквы в любом случае и цифры.

+0

Я должен был сказать, что CID - это только идентификатор отслеживания, поэтому может быть любое значение от 6 до 10 символов/чисел. Кроме того, проблема заключается в том, что мне нужно покрыть все, что ни от подпапок до 3 или 4 подпапок с cid-значением в конце. так есть ли способ поймать все это с помощью cid-значения или мне нужно указать и экземпляр для 1 папки, 2 папки, 3 папки и т. д.? – huddds

+0

Да, вам нужно будет сделать несколько правил, по одному для каждого количества папок. Я обновил свой ответ, чтобы охватить более общий номер CID. –

+1

Спасибо, я получил эту работу, как только я добавил правило для 0 папок, 1 папку, 2 папки и т. Д. – huddds

Смежные вопросы