Arhn - архитектура программирования

Правило перезаписи IIS в web.config

У меня есть следующее правило в моем файле web.config:

<rule name="Reviews SEO Redirect" stopProcessing="true">
<match url="www.mysite.us/reviews/Manufacturer-([^~]*)-([^~]*)-([^~]*)" />
<action type="Redirect" redirectType="Permanent" url="www.mysite.us/reviews/{R:1}" />
</rule>

Теперь моя цель — перенаправить структуру URL следующим образом:

http://www.mysite.us/reviews/Manufacturer-X-Category-Y

to

http://www.mysite.us/reviews/X

Если я перехожу на http://www.mysite.us/reviews/X, я получаю ожидаемое содержание. если я перейду к исходному URL-адресу, он подтянет представление по умолчанию /reviews, которое я создал в модуле просмотра Drupal. И это вообще не меняет URL-адрес в окне браузера. Так что такое ощущение, что я игнорирую правило или у меня неправильное совпадение.

Я использовал редактор перезаписи URL-адресов, чтобы проверить правило, и, похоже, оно разобралось так, как я хотел, но когда я попадаю на страницу своего сайта с такой структурой URL-адресов, НИЧЕГО не происходит. Так что мне интересно, что я пропустил.

Какие-либо предложения?

06.12.2013

Ответы:


1

URL-адрес совпадения не содержит имя хоста. Это должно быть следующим образом:

<rule name="Reviews SEO Redirect" stopProcessing="true">
  <match url="reviews/Manufacturer-([^~]*)-([^~]*)-([^~]*)" />
  <action type="Redirect" redirectType="Permanent" url="www.mysite.us/reviews/{R:1}" />
</rule>

Эта документация показывает как URL разбивается. Проблема с тестовой функциональностью заключается в том, что она не урезает значение до того, что передает IIS, и в конечном итоге вы вводите то, что ожидаете. Таким образом совпадает.

06.12.2013
  • Спасибо Бивел. Это полезно. Я все еще чешу голову, хотя. Я добавил, как мне казалось, простое тестовое правило для любого URL-адреса, оканчивающегося на html ( ‹match url=html$ /› ), и по-прежнему ничего не получаю при перенаправлении. Я буду продолжать читать ссылку, которую вы дали. 06.12.2013
  • Вы также можете попробовать <match url=".*html$" />. Кроме того, строка запроса находится в URL-адресе, поэтому совпадение будет отключено, если ваш URL-адрес включает строки запроса. 06.12.2013
  • Новые материалы

    Коллекции публикаций по глубокому обучению
    Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

    Представляем: Pepita
    Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

    Советы по коду Laravel #2
    1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

    Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
    Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

    3 способа решить квадратное уравнение (3-й мой любимый) -
    1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

    Создание VR-миров с A-Frame
    Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

    Демистификация рекурсии
    КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..