2013-06-08 24 views
38

Nie mogłem zrozumieć celu {R: N}. Może ktoś proszę wyjaśnić kiedy używać
{R:0} vs. {R:1}Przekierowanie adresu URL usługi IIS {R: N}

użytkowaniu przykład:

<action type="Redirect" url="http://www.{HTTP_HOST}/{R:0}" /> 

widziałem ScottGu używając {r: 1}

http://weblogs.asp.net/scottgu/archive/2010/04/20/tip-trick-fix-common-seo-problems-using-the-url-rewrite-extension.aspx

Natomiast poniżej ma {R: 0}

http://weblogs.asp.net/owscott/archive/2009/11/27/iis-url-rewrite-rewriting-non-www-to-www.aspx

Gdyby przyjrzeć łącza IIS poniżej, ale nie mogła uspokoić trawienia definicja poniżej:

nawiązań wstecznych wzorów stan są określone przez: {C: N}, gdzie n wynosi od 0 do 9; Odnośniki do wzorca są identyfikowane przez {R: N}, gdzie N wynosi od 0 do 9. Zauważ, że dla obu typów referencji zwrotnych {R: 0} i {C: 0} będą zawierały dopasowany ciąg

Odpowiedz

53

Zgodnie z dokumentacją:

Gdy stosuje się składnia wzór ECMAScript, back-odniesienia może być stworzony przez wprowadzenie nawiasów wokół części wzoru, który musi uchwycić tylną odniesienie.

Więc biorąc przykład, który następuje w dokumentacji:

^(www\.)(.*)$ 

i korzystania ciąg wejściowy www.foo.com w warunkach, trzeba będzie:

{C:0} - www.foo.com 
{C:1} - www. 
{C:2} - foo.com 

Aby to proste :

  • {R:x} służy jako odnośnik ze wzoru reguły (<match url="...">).
  • {C:x} jest stosowany jako odniesienie wsteczne od wzorca warunek (<conditions><add input="{HTTP_HOST}" pattern="..."></conditions>)
  • Odniesienie 0 zawiera cały łańcuch wejściowy
  • Odniesienie 1 zawiera pierwszą część łańcucha pasujący wzorzec w pierwszej nawiasach (), 2 odwołać drugi, itd ... aż do numeru referencyjnego 9

Uwaga:

Gdy używana jest składnia wzoru "wieloznaczna", odniesienia do tyłu są zawsze utworzone, gdy w wzorzystym symbolu gwiazdki (*). Nr referencyjne back-references są tworzone, gdy "?" jest używany we wzorcu.

http://www.iis.net/learn/extensions/url-rewrite-module/url-rewrite-module-configuration-reference#Using_back-references_in_rewrite_rules

Powiązane problemy