Назад | Перейти на главную страницу

Перезапись URL-адреса IIS7

У меня были такие URL-адреса:

http://www.domain.com/index.php?route=product/product&path=someString&product_id=1111111

и мне нужно перенаправить все запросы, поступающие на index.php, на это:

http://www.domain.com/p/1111111/

Я знаю методологию apache через .htaccess, но как мне это сделать в IIS7?

Попробуйте следующее правило (я предполагаю, что это правило для входящего трафика):

<rewrite>
  <rules>
    <rule name="SFRule" stopProcessing="true">
      <match url="index\.php" />
      <action type="Redirect" 
              url="/p/{C:3}" 
              appendQueryString="false" 
              redirectType="Found" />
      <conditions>
        <add input="{QUERY_STRING}" 
             pattern="route=([_0-9a-z-\/]+)(?:&amp;|&amp;amp;)path=([A-Za-z]+)(?:&amp;|&amp;amp;)product_id=([0-9]+)" />
      </conditions>
    </rule>
  </rules>
</rewrite>

Вы должны иметь возможность сделать это с помощью IIS 7 Перезапись URL модуль.