Akcje zestawu reguł w warstwie Standardowa/Premium platformy Azure (wersja zapoznawcza)Azure Front Door Standard/Premium (Preview) Rule Set actions

Uwaga

Ta dokumentacja dotyczy platformy Azure — Standard/Premium (wersja zapoznawcza).This documentation is for Azure Front Door Standard/Premium (Preview). Szukasz informacji na temat zewnętrznych drzwi platformy Azure?Looking for information on Azure Front Door? TutajWyświetl.View here.

Zestaw reguł Standard/Premium na platformie Azure obejmuje reguły z kombinacją warunków i akcji dopasowywania.An Azure Front Door Standard/Premium Rule Set consist of rules with a combination of match conditions and actions. Ten artykuł zawiera szczegółowy opis akcji, których można użyć w zestawie reguł Standard/Premium na platformie Azure.This article provides a detailed description of the actions you can use in Azure Front Door Standard/Premium Rule Set. Akcja definiuje zachowanie, które jest stosowane do typu żądania identyfikowanego przez warunek zgodności.The action defines the behavior that gets applied to a request type that a match condition(s) identifies. W zestawie reguł dla drzwi frontonu platformy Azure (standard/Premium) reguła może zawierać maksymalnie pięć akcji.In an Azure Front Door (Standard/Premium) Rule Set, a rule can contain up to five actions.

Ważne

Platforma Azure Front-Standard/Premium (wersja zapoznawcza) jest obecnie dostępna w publicznej wersji zapoznawczej.Azure Front Door Standard/Premium (Preview) is currently in public preview. Ta wersja zapoznawcza nie jest objęta umową dotyczącą poziomu usług i nie zalecamy korzystania z niej w przypadku obciążeń produkcyjnych.This preview version is provided without a service level agreement, and it's not recommended for production workloads. Niektóre funkcje mogą być nieobsługiwane lub ograniczone.Certain features might not be supported or might have constrained capabilities. Aby uzyskać więcej informacji, zobacz Uzupełniające warunki korzystania z wersji zapoznawczych platformy Microsoft Azure.For more information, see Supplemental Terms of Use for Microsoft Azure Previews.

Następujące akcje są dostępne do użycia w zestawie reguł dla drzwi platformy Azure.The following actions are available to use in Azure Front Door rule set.

Wygaśnięcie pamięci podręcznejCache expiration

Użyj akcji wygaśnięcie pamięci podręcznej , aby zastąpić wartość czasu wygaśnięcia (TTL) punktu końcowego dla żądań, które są zgodne z warunkami określonymi przez reguły.Use the cache expiration action to overwrite the time to live (TTL) value of the endpoint for requests that the rules match conditions specify.

Uwaga

Źródła mogą określać, aby nie buforować określonych odpowiedzi przy użyciu Cache-Control nagłówka z wartością no-cache , private lub no-store .Origins may specify not to cache specific responses using the Cache-Control header with a value of no-cache, private, or no-store. W takich przypadkach drzwi z przodu nigdy nie będą w pamięci podręcznej zawartości, a ta akcja nie będzie miała żadnego efektu.In these circumstances, Front Door will never cache the content and this action will have no effect.

WłaściwościProperties

WłaściwośćProperty Obsługiwane wartościSupported values
Zachowanie pamięci podręcznejCache behavior
  • Pamięć podręczna obejścia: Zawartość nie powinna być buforowana.Bypass cache: The content should not be cached. W szablonach ARM Ustaw cacheBehavior Właściwość na BypassCache .In ARM templates, set the cacheBehavior property to BypassCache.
  • Zastąpienie: Wartość czasu wygaśnięcia zwracana z źródła jest zastępowana wartością określoną w akcji.Override: The TTL value returned from your origin is overwritten with the value specified in the action. Takie zachowanie będzie stosowane tylko w przypadku, gdy odpowiedź jest w pamięci podręcznej.This behavior will only be applied if the response is cacheable. W szablonach ARM Ustaw cacheBehavior Właściwość na Override .In ARM templates, set the cacheBehavior property to Override.
  • Ustaw, jeśli brak: Jeśli wartość czasu wygaśnięcia nie zostanie zwrócona ze źródła, reguła ustawia czas wygaśnięcia na wartość określoną w akcji.Set if missing: If no TTL value gets returned from your origin, the rule sets the TTL to the value specified in the action. Takie zachowanie będzie stosowane tylko w przypadku, gdy odpowiedź jest w pamięci podręcznej.This behavior will only be applied if the response is cacheable. W szablonach ARM Ustaw cacheBehavior Właściwość na SetIfMissing .In ARM templates, set the cacheBehavior property to SetIfMissing.
Czas trwania pamięci podręcznejCache duration Gdy zachowanie pamięci podręcznej jest ustawione na Override lub Set if missing , te pola muszą określać czas trwania pamięci podręcznej do użycia.When Cache behavior is set to Override or Set if missing, these fields must specify the cache duration to use. Maksymalny czas trwania to 366 dni.The maximum duration is 366 days.
  • W Azure Portal: Określ dni, godziny, minuty i sekundy.In the Azure portal: specify the days, hours, minutes, and seconds.
  • W szablonach ARM: Określ czas trwania w formacie d.hh:mm:ss .In ARM templates: specify the duration in the format d.hh:mm:ss.

PrzykładExample

W tym przykładzie przesłonimy wygaśnięcie pamięci podręcznej do 6 godzin, w przypadku pasujących żądań, które nie określają już czasu trwania pamięci podręcznej.In this example, we override the cache expiration to 6 hours, for matched requests that don't specify a cache duration already.

Zrzut ekranu portalu przedstawiający akcję wygaśnięcia pamięci podręcznej.

Ciąg zapytania klucza pamięci podręcznejCache key query string

Użyj akcji ciągu zapytania klucza pamięci podręcznej , aby zmodyfikować klucz pamięci podręcznej na podstawie ciągów zapytań.Use the cache key query string action to modify the cache key based on query strings. Klucz pamięci podręcznej jest sposobem, w jaki drzwi frontonu identyfikują unikatowe żądania w pamięci podręcznej.The cache key is the way that Front Door identifies unique requests to cache.

WłaściwościProperties

WłaściwośćProperty Obsługiwane wartościSupported values
ZachowanieBehavior
  • Uwzględnij: Ciągi zapytania określone w parametrach Get są uwzględniane podczas generowania klucza pamięci podręcznej.Include: Query strings specified in the parameters get included when the cache key gets generated. W szablonach ARM Ustaw queryStringBehavior Właściwość na Include .In ARM templates, set the queryStringBehavior property to Include.
  • Buforuj każdy unikatowy adres URL: Każdy unikatowy adres URL ma swój własny klucz pamięci podręcznej.Cache every unique URL: Each unique URL has its own cache key. W szablonach ARM Użyj queryStringBehavior programu IncludeAll .In ARM templates, use the queryStringBehavior of IncludeAll.
  • Wyklucz: Ciągi zapytania określone w parametrach zostaną wykluczone, gdy zostanie wygenerowany klucz pamięci podręcznej.Exclude: Query strings specified in the parameters get excluded when the cache key gets generated. W szablonach ARM Ustaw queryStringBehavior Właściwość na Exclude .In ARM templates, set the queryStringBehavior property to Exclude.
  • Ignoruj ciągi zapytań: Ciągi zapytań nie są brane pod uwagę podczas generowania klucza pamięci podręcznej.Ignore query strings: Query strings aren't considered when the cache key gets generated. W szablonach ARM Ustaw queryStringBehavior Właściwość na ExcludeAll .In ARM templates, set the queryStringBehavior property to ExcludeAll.
ParametryParameters Lista nazw parametrów ciągu zapytania, rozdzielonych przecinkami.The list of query string parameter names, separated by commas.

PrzykładExample

W tym przykładzie zmodyfikujemy klucz pamięci podręcznej w celu uwzględnienia parametru ciągu zapytania o nazwie customerId .In this example, we modify the cache key to include a query string parameter named customerId.

Zrzut ekranu portalu przedstawiający akcję ciągu zapytania klucza pamięci podręcznej.

Modyfikuj nagłówek żądaniaModify request header

Akcja Modyfikuj nagłówek żądania służy do modyfikowania nagłówków w żądaniu wysyłanych do źródła.Use the modify request header action to modify the headers in the request when it is sent to your origin.

WłaściwościProperties

WłaściwośćProperty Obsługiwane wartościSupported values
OperatorOperator
  • Dołącz: Określony nagłówek zostanie dodany do żądania o określonej wartości.Append: The specified header gets added to the request with the specified value. Jeśli nagłówek już istnieje, wartość jest dołączana do istniejącej wartości nagłówka przy użyciu łączenia ciągów.If the header is already present, the value is appended to the existing header value using string concatenation. Nie dodano ograniczników.No delimiters are added. W szablonach ARM Użyj headerAction programu Append .In ARM templates, use the headerAction of Append.
  • Zastąp: Określony nagłówek zostanie dodany do żądania o określonej wartości.Overwrite: The specified header gets added to the request with the specified value. Jeśli nagłówek już istnieje, określona wartość zastępuje istniejącą wartość.If the header is already present, the specified value overwrites the existing value. W szablonach ARM Użyj headerAction programu Overwrite .In ARM templates, use the headerAction of Overwrite.
  • Usuń: Jeśli nagłówek określony w regule jest obecny, nagłówek zostanie usunięty z żądania.Delete: If the header specified in the rule is present, the header gets deleted from the request. W szablonach ARM Użyj headerAction programu Delete .In ARM templates, use the headerAction of Delete.
Nazwa nagłówkaHeader name Nazwa nagłówka do zmodyfikowania.The name of the header to modify.
Wartość nagłówkaHeader value Wartość do dołączenia lub zastępowania.The value to append or overwrite.

PrzykładExample

W tym przykładzie dołączymy wartość AdditionalValue do MyRequestHeader nagłówka żądania.In this example, we append the value AdditionalValue to the MyRequestHeader request header. Jeśli początek ustawił nagłówek odpowiedzi na wartość ValueSetByClient , po zastosowaniu tej akcji nagłówek żądania będzie miał wartość ValueSetByClientAdditionalValue .If the origin set the response header to a value of ValueSetByClient, then after this action is applied, the request header would have a value of ValueSetByClientAdditionalValue.

Zrzut ekranu portalu przedstawiający akcję Modyfikuj nagłówek żądania.

Modyfikuj nagłówek odpowiedziModify response header

Akcja Modyfikuj nagłówek odpowiedzi służy do modyfikowania nagłówków, które są obecne w odpowiedziach przed zwróceniem ich do klientów.Use the modify response header action to modify headers that are present in responses before they are returned to your clients.

WłaściwościProperties

WłaściwośćProperty Obsługiwane wartościSupported values
OperatorOperator
  • Dołącz: Określony nagłówek zostanie dodany do odpowiedzi o określonej wartości.Append: The specified header gets added to the response with the specified value. Jeśli nagłówek już istnieje, wartość jest dołączana do istniejącej wartości nagłówka przy użyciu łączenia ciągów.If the header is already present, the value is appended to the existing header value using string concatenation. Nie dodano ograniczników.No delimiters are added. W szablonach ARM Użyj headerAction programu Append .In ARM templates, use the headerAction of Append.
  • Zastąp: Określony nagłówek zostanie dodany do odpowiedzi o określonej wartości.Overwrite: The specified header gets added to the response with the specified value. Jeśli nagłówek już istnieje, określona wartość zastępuje istniejącą wartość.If the header is already present, the specified value overwrites the existing value. W szablonach ARM Użyj headerAction programu Overwrite .In ARM templates, use the headerAction of Overwrite.
  • Usuń: Jeśli nagłówek określony w regule jest obecny, nagłówek zostanie usunięty z odpowiedzi.Delete: If the header specified in the rule is present, the header gets deleted from the response. W szablonach ARM Użyj headerAction programu Delete .In ARM templates, use the headerAction of Delete.
Nazwa nagłówkaHeader name Nazwa nagłówka do zmodyfikowania.The name of the header to modify.
Wartość nagłówkaHeader value Wartość do dołączenia lub zastępowania.The value to append or overwrite.

PrzykładExample

W tym przykładzie usuniemy nagłówek z nazwą X-Powered-By z odpowiedzi, zanim zostaną one zwrócone do klienta.In this example, we delete the header with the name X-Powered-By from the responses before they are returned to the client.

Zrzut ekranu portalu przedstawiający akcję Modyfikuj nagłówek odpowiedzi.

Przekierowanie adresu URLURL redirect

Użyj akcji przekierowanie adresu URL , aby przekierować klientów do nowego adresu URL.Use the URL redirect action to redirect clients to a new URL. Klienci otrzymują odpowiedź przekierowania od drzwi przednich.Clients are sent a redirection response from Front Door.

WłaściwościProperties

WłaściwośćProperty Obsługiwane wartościSupported values
Typ przekierowaniaRedirect type Typ odpowiedzi, który ma zostać zwrócony do obiektu żądającego.The response type to return to the requestor.
  • W Azure Portal: znaleziono (302), przeniesione (301), tymczasowe przekierowanie (307), trwałe przekierowanie (308).In the Azure portal: Found (302), Moved (301), Temporary Redirect (307), Permanent Redirect (308).
  • W szablonach ARM: Found , Moved , TemporaryRedirect , PermanentRedirectIn ARM templates: Found, Moved, TemporaryRedirect, PermanentRedirect
Protokół przekierowaniaRedirect protocol
  • W Azure Portal: Match Request , HTTP , HTTPSIn the Azure portal: Match Request, HTTP, HTTPS
  • W szablonach ARM: MatchRequest , Http , HttpsIn ARM templates: MatchRequest, Http, Https
Host docelowyDestination host Nazwa hosta, do którego ma zostać przekierowane żądanie.The host name you want the request to be redirected to. Pozostaw to pole puste, aby zachować hosta przychodzącego.Leave blank to preserve the incoming host.
Ścieżka docelowaDestination path Ścieżka do użycia w przekierowaniu.The path to use in the redirect. Uwzględnij wiodące / .Include the leading /. Pozostaw to pole puste, aby zachować ścieżkę przychodzącą.Leave blank to preserve the incoming path.
Ciąg zapytaniaQuery string Ciąg zapytania używany w przekierowaniu.The query string used in the redirect. Nie dołączaj wiodącej ? .Don't include the leading ?. Pozostaw to pole puste, aby zachować ciąg zapytania przychodzącego.Leave blank to preserve the incoming query string.
Fragment docelowyDestination fragment Fragment do użycia w przekierowaniu.The fragment to use in the redirect. Pozostaw to pole puste, aby zachować fragment przychodzący.Leave blank to preserve the incoming fragment.

PrzykładExample

W tym przykładzie przekierowujemy żądanie do https://contoso.com/exampleredirection?clientIp={client_ip} , jednocześnie zachowując fragment.In this example, we redirect the request to https://contoso.com/exampleredirection?clientIp={client_ip}, while preserving the fragment. Używane jest tymczasowe Przekierowanie HTTP (307).An HTTP Temporary Redirect (307) is used. Adres IP klienta jest używany zamiast {client_ip} tokenu w adresie URL przy użyciu client_ip zmiennej serwerowej.The IP address of the client is used in place of the {client_ip} token within the URL by using the client_ip server variable.

Zrzut ekranu portalu pokazujący akcję przekierowania adresu URL.

Ponowne zapisywanie adresów URLURL rewrite

Użyj akcji ponownego zapisywania adresu URL , aby ponownie napisać ścieżkę żądania, które jest trasy do źródła.Use the URL rewrite action to rewrite the path of a request that's en route to your origin.

WłaściwościProperties

WłaściwośćProperty Obsługiwane wartościSupported values
Wzorzec źródłaSource pattern Zdefiniuj wzorzec źródłowy w ścieżce URL, który ma zostać zamieniony.Define the source pattern in the URL path to replace. Obecnie wzorzec źródłowy używa dopasowania opartego na prefiksie.Currently, source pattern uses a prefix-based match. Aby dopasować wszystkie ścieżki URL, użyj ukośnika ( / ) jako wartości wzorca źródła.To match all URL paths, use a forward slash (/) as the source pattern value.
Element docelowyDestination Zdefiniuj ścieżkę docelową do użycia podczas ponownego zapisywania.Define the destination path to use in the rewrite. Ścieżka docelowa zastępuje wzorzec źródłowy.The destination path overwrites the source pattern.
Zachowaj niedopasowaną ścieżkęPreserve unmatched path W przypadku ustawienia wartości tak pozostała ścieżka po wzorcu źródłowym zostanie dołączona do nowej ścieżki docelowej.If set to Yes, the remaining path after the source pattern is appended to the new destination path.

PrzykładExample

W tym przykładzie ponownie zapisujemy wszystkie żądania do ścieżki /redirection i nie zachowuje reszty ścieżki.In this example, we rewrite all requests to the path /redirection, and don't preserve the remainder of the path.

Zrzut ekranu portalu przedstawiający akcję ponownego zapisu adresu URL.

Zmienne serweraServer variables

Zmienne serwera zestawu reguł zapewniają dostęp do strukturalnych informacji o żądaniu.Rule Set server variables provide access to structured information about the request. Zmienne serwera umożliwiają dynamiczne Zmienianie nagłówków żądania/odpowiedzi lub ścieżki ponownego zapisywania adresu URL/ciągów zapytań, na przykład po załadowaniu nowej strony lub po opublikowaniu formularza.You can use server variables to dynamically change the request/response headers or URL rewrite paths/query strings, for example, when a new page load or when a form is posted.

Obsługiwane zmienneSupported variables

Nazwa zmiennejVariable name OpisDescription
socket_ip Adres IP bezpośredniego połączenia z krawędzią frontu drzwi platformy Azure.The IP address of the direct connection to Azure Front Door edge. Jeśli Klient użył serwera proxy HTTP lub modułu równoważenia obciążenia do wysłania żądania, wartość socket_ip jest adresem IP serwera proxy lub modułu równoważenia obciążenia.If the client used an HTTP proxy or a load balancer to send the request, the value of socket_ip is the IP address of the proxy or load balancer.
client_ip Adres IP klienta, który dokonał oryginalnego żądania.The IP address of the client that made the original request. Jeśli X-Forwarded-For w żądaniu wystąpił nagłówek, adres IP klienta zostanie pobrany z nagłówka.If there was an X-Forwarded-For header in the request, then the client IP address is picked from the header.
client_port Port IP klienta, który wykonał żądanie.The IP port of the client that made the request.
hostname Nazwa hosta w żądaniu klienta.The host name in the request from the client.
geo_country Wskazuje kraj/region osoby żądającej za pomocą kodu kraju/regionu.Indicates the requester's country/region of origin through its country/region code.
http_method Metoda używana do żądania adresu URL, na przykład GET lub POST .The method used to make the URL request, such as GET or POST.
http_version Protokół żądania.The request protocol. Zwykle HTTP/1.0 , HTTP/1.1 , lub HTTP/2.0 .Usually HTTP/1.0, HTTP/1.1, or HTTP/2.0.
query_string Lista par zmienna/wartość, które następuje po "?" w żądanym adresie URL.The list of variable/value pairs that follows the "?" in the requested URL.
Na przykład w żądaniu http://contoso.com:8080/article.aspx?id=123&title=fabrikam wartość będzie równa query_string id=123&title=fabrikam .For example, in the request http://contoso.com:8080/article.aspx?id=123&title=fabrikam, the query_string value will be id=123&title=fabrikam.
request_scheme Schemat żądania: http lub https .The request scheme: http or https.
request_uri Pełny identyfikator URI żądania (z argumentami).The full original request URI (with arguments).
Na przykład w żądaniu http://contoso.com:8080/article.aspx?id=123&title=fabrikam wartość będzie równa request_uri /article.aspx?id=123&title=fabrikam .For example, in the request http://contoso.com:8080/article.aspx?id=123&title=fabrikam, the request_uri value will be /article.aspx?id=123&title=fabrikam.
ssl_protocol Protokół ustanowionego połączenia TLS.The protocol of an established TLS connection.
server_port Port serwera, który zaakceptował żądanie.The port of the server that accepted a request.
url_path Identyfikuje określony zasób na hoście, do którego klient sieci Web chce uzyskać dostęp.Identifies the specific resource in the host that the web client wants to access. Jest to część identyfikatora URI żądania bez argumentów.This is the part of the request URI without the arguments.
Na przykład w żądaniu http://contoso.com:8080/article.aspx?id=123&title=fabrikam wartość będzie równa uri_path /article.aspx .For example, in the request http://contoso.com:8080/article.aspx?id=123&title=fabrikam, the uri_path value will be /article.aspx.

Format zmiennej serweraServer variable format

Zmienne serwera można określić przy użyciu następujących formatów:Server variables can be specified using the following formats:

  • {variable}: Uwzględnij całą zmienną serwerową.{variable}: Include the entire server variable. Na przykład, jeśli adres IP klienta to 111.222.333.444 następnie, będzie {client_ip} obliczany token 111.222.333.444 .For example, if the client IP address is 111.222.333.444 then the {client_ip} token would evaluate to 111.222.333.444.
  • {variable:offset}: Uwzględnij zmienną serwerową po określonym przesunięciu aż do końca zmiennej.{variable:offset}: Include the server variable after a specific offset, until the end of the variable. Przesunięcie jest zależne od zera.The offset is zero-based. Na przykład, jeśli adres IP klienta to 111.222.333.444 następnie, będzie {client_ip:3} obliczany token .222.333.444 .For example, if the client IP address is 111.222.333.444 then the {client_ip:3} token would evaluate to .222.333.444.
  • {variable:offset:length}: Uwzględnij zmienną serwerową po określonym przesunięciu do określonej długości.{variable:offset:length}: Include the server variable after a specific offset, up to the specified length. Przesunięcie jest zależne od zera.The offset is zero-based. Na przykład, jeśli adres IP klienta to 111.222.333.444 następnie, będzie {client_ip:4:3} obliczany token 222 .For example, if the client IP address is 111.222.333.444 then the {client_ip:4:3} token would evaluate to 222.

Obsługiwane akcjeSupported actions

Zmienne serwera są obsługiwane w następujących akcjach:Server variables are supported on the following actions:

  • Ciąg zapytania klucza pamięci podręcznejCache key query string
  • Modyfikuj nagłówek żądaniaModify request header
  • Modyfikuj nagłówek odpowiedziModify response header
  • Przekierowywanie adresów URLURL redirect
  • Regenerowanie adresów URLURL rewrite

Następne krokiNext steps