Az URL-alapú útválasztás áttekintése

Az URL-útvonalalapú útválasztás lehetővé teszi, hogy a kérés URL-útvonalai alapján átirányítsa a forgalmat a háttérkiszolgáló-készletekre.

Az egyik lehetőség az, hogy a különböző típusú tartalmakra vonatkozó kéréseket a megfelelő háttér-kiszolgálókészlethez irányítja.

A következő példában az Application Gateway három háttérkiszolgáló-készletből(például a VideoServerPool, az ImageServerPool és a DefaultServerPool) származó contoso.com forgalmát szolgálja ki.

imageURLroute

A http://contoso.com/video/* URL-hez kapcsolódó kérések a VideoServerPool, a http://contoso.com/images/* URL-hez kapcsolódóak pedig az ImageServerPool készlethez lesznek átirányítva. Ha a kérés egyik elérésiút-kategóriába sem sorolható, a DefaultServerPool az alapértelmezett kiszolgáló.

Fontos

Az 1-es és a 2-es verziós termékváltozatok esetében a szabályok feldolgozása a portálon felsorolt sorrendben történik. Az elérésiút-szabályok létrehozásakor az ajánlott eljárás az, hogy a végén a legkevésbé meghatározott elérési út (a helyettesítő karakterekkel rendelkezők) szerepeljenek. Ha a helyettesítő karakterek felül vannak, akkor akkor is elsőbbséget élveznek, ha a későbbi elérésiút-szabályok konkrétabb egyezést tartalmaznak.

Ha előbb egy alapszintű figyelő szerepel a listában, és az megfelel egy bejövő kérésnek, a figyelő feldolgozza azt. Az alapszintű figyelő konfigurálása előtt azonban erősen ajánlott a többhelyes figyelők konfigurálása. Ez biztosítja, hogy a forgalom a megfelelő háttérbe legyen irányítva.

Az UrlPathMap konfigurációs elem

Az urlPathMap elem a háttérkiszolgálókészlet-leképezések elérési útvonalmintáinak megadására szolgál. Az alábbi kódpélda a sablonfájlból származó urlPathMap elem kódrészlete.

"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}/backendHttpSettingsCollection/{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}/backendHttpSettingsCollection/{settingName2}"
                }
            }
        }]
    }
}]

PathPattern

A PathPattern az egyező elérésiút-minták listája. Minden elérési útnak a / karakterrel kell kezdődnie, és * karaktert használhat helyettesítő karakterként. Az elérési útegyeztetőhöz táplált sztring nem tartalmaz szöveget az első ? vagy #az után, és ezek a karakterek itt nem engedélyezettek. Ellenkező esetben az URL-címben engedélyezett karakterek a PathPatternben engedélyezettek.

Az elérésiút-szabályok nem érzéketlenek a kis- és nagybetűkben.

Elérésiút-minta Támogatott?
/images/* igen
/images* igen
/images/*.jpg nem
/*.jpg nem
/Repos/*/Comments/* nem
/CurrentUser/Comments/* igen

Az elérésiút-szabályok feldolgozása sorrendben történik a portálon való listázásuk alapján. A legkevésbé meghatározott elérési útnak (helyettesítő karakterekkel) a lista végén kell lennie, hogy az utolsóként legyen feldolgozva. Ha a helyettesítő karakterekre vonatkozó szabályok a lista tetején találhatók, azok elsőbbséget élveznek, és először feldolgozásra kerülnek. Tekintse meg a következő példaforgatókönyveket.

Példák

Elérésiút-alapú szabályfeldolgozás helyettesítő karakter (*) használata esetén:

1. példa:

/master-dev* to contoso.com

/master-dev/api-core/ to fabrikam.com

/master-dev/* to microsoft.com

Mivel a helyettesítő karakter elérési útja /master-dev* részletesebb útvonalak felett található, a rendszer /master-dev az összes olyan ügyfélkérést átirányítja contoso.com, beleértve az adott /master-dev/api-core/. Annak biztosítása érdekében, hogy az ügyfélkérések a megfelelő útvonalakra legyenek irányítva, kritikus fontosságú, hogy a részletes elérési utak a helyettesítő karakterek elérési útjai fölé legyenek irányítva.

2. példa:

/ (default) to contoso.com

/master-dev/api-core/ to fabrikam.com

/master-dev/api to bing.com

/master-dev/* to microsoft.com

Az elérésiút-mintát /master-dev/* tartalmazó összes ügyfélkérés feldolgozása a felsorolt sorrendben történik. Ha nincs egyezés az elérésiút-szabályok között, a kérés az alapértelmezett célhoz lesz irányítva.

További információ: Resource Manager-sablon URL-alapú útválasztással.

PathBasedRouting szabály

A PathBasedRouting típusú RequestRoutingRule szabály arra szolgál, hogy egy figyelőt az adott urlPathMap elemhez kössön. Minden kérés, amely ehhez a figyelőhöz kapcsolódik, az urlPathMap elemben meghatározott irányelvek alapján lesz átirányítva. A PathBasedRouting szabály kódrészlete:

"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}"
    }

}
    }
]

Következő lépések

Miután elsajátította az URL-alapú tartalom-átirányításról szóló ismereteket, látogasson el az URL-alapú átirányítást használó alkalmazásátjáró létrehozását bemutató témakörhöz.