Panoramica del routing basato su percorso URLURL Path Based Routing overview

Il routing basato su percorso URL consente di instradare il traffico a pool di server back-end in base ai percorsi URL della richiesta.URL Path Based Routing allows you to route traffic to back-end server pools based on URL Paths of the request.

Uno degli scenari è l'instradamento delle richieste di tipi di contenuto diversi a pool di server back-end diversi.One of the scenarios is to route requests for different content types to different backend server pools.

Nell'esempio seguente, il gateway applicazione soddisfa le richieste di traffico per contoso.com dai tre pool di server back-end, ad esempio VideoServerPool, ImageServerPool e DefaultServerPool.In the following example, Application Gateway is serving traffic for contoso.com from three back-end server pools for example: VideoServerPool, ImageServerPool, and DefaultServerPool.

imageURLroute

Per le richieste http://contoso.com/video/* viene eseguito il rounting verso VideoServerPool mentre per le richieste http://contoso.com/images/* verso il rounting verso ImageServerPool.Requests for http://contoso.com/video/* are routed to VideoServerPool, and http://contoso.com/images/* are routed to ImageServerPool. In caso di mancata corrispondenza dei percorsi, viene selezionato DefaultServerPool.DefaultServerPool is selected if none of the path patterns match.

Importante

Le regole vengono elaborate nell'ordine in cui sono elencate nel portale.Rules are processed in the order they are listed in the portal. È consigliabile configurare i listener multisito prima di configurare un listener di base.It is highly recommended to configure multi-site listeners first prior to configuring a basic listener. In questo modo il traffico viene indirizzato al back-end appropriato.This ensures that traffic gets routed to the right back end. Se un listener di base viene elencato per primo e corrisponde a una richiesta in ingresso, sarà tale listener a elaborarla.If a basic listener is listed first and matches an incoming request, it gets processed by that listener.

Elemento di configurazione UrlPathMapUrlPathMap configuration element

L'elemento UrlPathMap consente di specificare modelli di percorso dei mapping dei pool di server back-end.The urlPathMap element is used to specify Path patterns to back-end server pool mappings. L'esempio di codice seguente è il frammento dell'elemento urlPathMap del file modello.The following code example is the snippet of urlPathMap element from template file.

"urlPathMaps": [{
    "name": "{urlpathMapName}",
    "id": "/subscriptions/{subscriptionId}/../microsoft.network/applicationGateways/{gatewayName}/urlPathMaps/{urlpathMapName}",
    "properties": {
        "defaultBackendAddressPool": {
            "id": "/subscriptions/    {subscriptionId}/../microsoft.network/applicationGateways/{gatewayName}/backendAddressPools/{poolName1}"
        },
        "defaultBackendHttpSettings": {
            "id": "/subscriptions/{subscriptionId}/../microsoft.network/applicationGateways/{gatewayName}/backendHttpSettingsList/{settingname1}"
        },
        "pathRules": [{
            "name": "{pathRuleName}",
            "properties": {
                "paths": [
                    "{pathPattern}"
                ],
                "backendAddressPool": {
                    "id": "/subscriptions/{subscriptionId}/../microsoft.network/applicationGateways/{gatewayName}/backendAddressPools/{poolName2}"
                },
                "backendHttpsettings": {
                    "id": "/subscriptions/{subscriptionId}/../microsoft.network/applicationGateways/{gatewayName}/backendHttpsettingsList/{settingName2}"
                }
            }
        }]
    }
}]

Nota

PathPattern: questa impostazione è un elenco dei modelli di percorso usati per la corrispondenza.PathPattern: This setting is a list of path patterns to match. Ognuno deve iniziare con una barra / e l'unica posizione in cui è consentito il carattere "*" è alla fine dopo "/".Each must start with / and the only place a "*" is allowed is at the end following a "/." La stringa inviata al selettore di percorsi non include alcun testo dopo il primo carattere "?" o "#" e questi caratteri non sono consentiti qui.The string fed to the path matcher does not include any text after the first? or #, and those chars are not allowed here.

Per altre informazioni, vedere un modello di Azure Resource Manager che usa il routing basato su URL .You can check out a Resource Manager template using URL-based routing for more information.

Regola PathBasedRoutingPathBasedRouting rule

RequestRoutingRule di tipo PathBasedRouting consente di associare un listener a un urlPathMap.RequestRoutingRule of type PathBasedRouting is used to bind a listener to a urlPathMap. Tutte le richieste ricevute per il listener vengono instradate in base ai criteri specificati in urlPathMap.All requests that are received for this listener are routed based on policy specified in urlPathMap. Frammento della regola PathBasedRouting:Snippet of PathBasedRouting rule:

"requestRoutingRules": [
    {

"name": "{ruleName}",
"id": "/subscriptions/{subscriptionId}/../microsoft.network/applicationGateways/{gatewayName}/requestRoutingRules/{ruleName}",
"properties": {
    "ruleType": "PathBasedRouting",
    "httpListener": {
        "id": "/subscriptions/{subscriptionId}/../microsoft.network/applicationGateways/{gatewayName}/httpListeners/<listenerName>"
    },
    "urlPathMap": {
        "id": "/subscriptions/{subscriptionId}/../microsoft.network/applicationGateways/{gatewayName}/ urlPathMaps/{urlpathMapName}"
    },

}
    }
]

Passaggi successiviNext steps

Dopo aver acquisito familiarità con il routing di contenuti basato su URL, passare a Create a Path-based rule for an application gateway by using the portal (Creare una regola basata sul percorso per un gateway applicazione usando il portale) per la creazione di un gateway applicazione con regole di routing basate su URL.After learning about URL-based content routing, go to create an application gateway using URL-based routing to create an application gateway with URL routing rules.