Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Note
2024. június 1-jétől az új App Service-alkalmazások kialakíthatnak egyedi alapértelmezett gazdagépnevet, amely az <app-name>-<random-hash>.<region>.azurewebsites.net
elnevezési konvenciót használja. Például: myapp-ds27dh7271aah175.westus-01.azurewebsites.net
. A meglévő alkalmazásnevek változatlanok maradnak.
For more information, see the blog post about creating a web app with a unique default host name.
Amikor a webalkalmazást, a Linuxos webalkalmazást, a mobil háttérrendszert vagy az API-alkalmazást az Azure App Service-ben helyezi üzembe, az alapértelmezett éles hely helyett egy külön üzembehelyezési helyet használhat. Ez a módszer akkor érhető el, ha egy App Service-csomag Standard, Premium vagy Izolált szintjén fut. Deployment slots are live apps with their own host names. App content and configuration elements can be swapped between two deployment slots, including the production slot.
Az alkalmazás nem gyártási ponton való üzembe helyezése a következő előnyökkel jár:
You can validate app changes before you swap the slot into production.
You can make sure that all instances of the slot are warmed up before you swap it into production. Ez a módszer kiküszöböli az állásidőt az alkalmazás üzembe helyezésekor. A forgalom átirányítása zökkenőmentes. A felcserélési műveletek miatt a rendszer nem küld el kéréseket.
Ezt a teljes munkafolyamatot automatizálhatja az automatikus felcserélés konfigurálásával, ha nincs szükség előcseréléses ellenőrzésre.
After a swap, the slot with previously staged app now has the previous production app. If the changes swapped into the production slot aren't as you expect, you can perform the same swap immediately to get your last known good site back.
Az üzembehelyezési pontok használata nem jár külön díjjal. Minden App Service-csomagszint különböző számú üzembehelyezési pontot támogat. Az alkalmazásszint által támogatott pontok számának megtekintéséhez tekintse meg az App Service korlátait.
Ha az alkalmazást egy másik szintre szeretné skálázni, győződjön meg arról, hogy a célszint támogatja az alkalmazás által már használt tárolóhelyek számát. Ha például az alkalmazás ötnél több tárolóhellyel rendelkezik, nem skálázhatja le a Standard szintre. A Standard szint csak öt üzembehelyezési pontot támogat.
Az alábbi videó kiegészíti a cikkben szereplő lépéseket, és bemutatja, hogyan állíthat be átmeneti környezeteket az Azure App Service-ben.
Előfeltételek
- A kívánt slot művelet végrehajtásához szükséges engedélyek. A szükséges engedélyekkel kapcsolatos információkért tekintse meg az erőforrás-szolgáltató műveleteit. Search for slot, for example.
Add a slot
Ahhoz, hogy több üzembehelyezési pontot engedélyezhessen, az alkalmazásnak standard, prémium vagy izolált szinten kell futnia.
Az Azure Portalon nyissa meg az alkalmazás felügyeleti oldalát.
A bal oldali menüben válassza az Üzembehelyezés>Üzembehelyezési pontok lehetőséget. Ezután válassza a Hozzáadás lehetőséget.
Note
Ha az alkalmazás még nincs a Standard, a Prémium vagy az Izolált szinten, válassza a Frissítés lehetőséget. A folytatás előtt lépjen az alkalmazás Méretezés lapjára.
A Pont hozzáadása párbeszédpanelen adjon nevet a pontnak, és adja meg, hogy klónozza-e az alkalmazáskonfigurációt egy másik üzembehelyezési pontból. A folytatáshoz válassza a Hozzáadás lehetőséget.
A konfigurációt bármely meglévő pontból klónozhatja. A klónozni kívánt beállítások közé tartoznak az alkalmazásbeállítások, a kapcsolati sztring, a nyelvi keretrendszer verziói, a webes szoftvercsatornák, a HTTP-verzió és a platformbitesség.
Note
Currently, a private endpoint isn't cloned across slots.
A beállítások megadása után kattintson a Bezárás gombra a párbeszédpanel bezárásához. Az új pont most megjelenik az Üzembehelyezési pontok lapon. By default, Traffic % is set to 0 for the new slot, with all customer traffic routed to the production slot.
Válassza ki az új üzembehelyezési pontot az erőforráslap megnyitásához.
Az előkészítési pont felügyeleti oldallal rendelkezik, mint bármely más App Service-alkalmazás. You can change the slot's configuration. Azért, hogy emlékeztesse Önt arra, hogy az üzembe helyezési slotot nézi, az alkalmazás neve <alkalmazásnév>/<slot-név> formában jelenik meg. Az alkalmazás típusa App Service (Slot). A helyet külön alkalmazásként is láthatja az erőforráscsoportban, ugyanazokkal a megnevezésekkel.
A pont erőforrásoldalán válassza ki az alkalmazás URL-címét. The deployment slot has its own host name and is also a live app. Az üzembehelyezési ponthoz való nyilvános hozzáférés korlátozásához tekintse meg az Azure App Service hozzáférési korlátozásainak beállítását.
Az új üzembehelyezési pont nem tartalmaz tartalmat, még akkor sem, ha a beállításokat egy másik pontról klónozza. For example, you can publish to this slot with Git. You can deploy to the slot from a different repository branch or a different repository. A közzétételi profil lekérése az Azure App Service-ből című cikk meg tudja adni a slotba való üzembe helyezéshez szükséges információkat. Visual Studio can import the profile to deploy contents to the slot.
The slot's URL has the format http://sitename-slotname.azurewebsites.net
. Ha az URL-cím hosszát a szükséges DNS-korlátokon belül szeretné tartani, a rendszer 40 karakterből csonkolja a webhely nevét. A kombinált webhelynévnek és pontnévnek 59 karakternél kevesebbnek kell lennie.
Értsük meg, mi történik egy felcserélés során
A felcserélési művelet lépései
When you swap two slots, App Service does the following to ensure that the target slot doesn't experience downtime:
Apply the following settings from the target slot (for example, the production slot) to all instances of the source slot:
- Slot-specific app settings and connection strings, if applicable
- Folyamatos üzembe helyezési beállítások, ha engedélyezve van
- App Service-hitelesítési beállítások, ha engedélyezve van
Amikor bármelyik beállítást a forráshelyre alkalmazzák, a módosítás kiváltja a forráshelyen lévő összes példány újraindulását. Az előzetes verzióval való felcserélés során ez a művelet az első fázis végét jelöli. A felcserélési művelet szünetel. You can validate that the source slot works correctly with the target slot's settings.
Wait for every instance in the source slot to complete its restart. If any instance fails to restart, the swap operation reverts all changes to the source slot and stops the operation.
Ha a helyi gyorsítótár engedélyezve van, aktiválja a helyi gyorsítótár inicializálását úgy, hogy HTTP-kérést küld a forráshely minden példányán az alkalmazásgyökérnek (
/
). Várjon, amíg minden szerverpéldány HTTP-választ ad vissza. A helyi gyorsítótár inicializálása minden példányon újraindul.If auto swap is enabled with custom warm-up, trigger the custom application initialization on each instance of the source slot.
If
applicationInitialization
isn't specified, trigger an HTTP request to the application root of the source slot on each instance.If an instance returns any HTTP response, it's considered to be warmed up.
If all instances on the source slot are warmed up successfully, swap the two slots by switching their routing rules. After this step, the target slot (for example, the production slot) has the app that's previously warmed up in the source slot.
Most, hogy a forráshelyen található a korábban a célhelyen lévő felcserélés előtti alkalmazás, hajtsa végre ugyanezt a műveletet az összes beállítás alkalmazásával és a példányok újraindításával.
A felcserélt alkalmazások inicializálásának minden munkája a forráshelyen történik. A célhely online állapotban marad, miközben a forráspont előkészítése és bemelegedése folyamatban van, függetlenül attól, hogy a csere sikeres vagy sikertelen lesz-e. To swap a staging slot with the production slot, make sure that the production slot is always the target slot. This way, the swap operation doesn't affect your production app.
Note
Your former production instances are swapped into staging after this swap operation. Ezeket a példányokat a felcserélési folyamat utolsó lépésében újrahasznosítottuk. If you have any long-running operations in your application, they're abandoned when the workers recycle. Ez a tény a függvényalkalmazásokra is vonatkozik. Győződjön meg arról, hogy az alkalmazáskód hibatűrő módon van megírva.
A nyílás nem cserélhetővé tételének lépései
Ha egy konfigurációt egy másik üzembehelyezési pontról klónoz, a klónozott konfiguráció szerkeszthető. Egyes konfigurációelemek a felcserélések tartalmát követik (nem pontspecifikusak). A többi konfigurációs elem ugyanabban a pontban marad a felcserélés után ( pontspecifikusak).
A pontok felcserélésekor a rendszer a következő beállításokat cseréli fel:
- Nyelvi verem és verzió, 32 bites és 64 bites
- Alkalmazásbeállítások (konfigurálható egy ponthoz való ragaszkodáshoz)
- Kapcsolati karakterláncok (beállíthatók úgy, hogy adott slothoz tartozzanak)
- Csatlakoztatott tárfiókok (konfigurálható úgy, hogy egy ponthoz ragaszkodjanak)
- Handler mappings
- Nyilvános tanúsítványok
- WebJobs tartalom
- Hibrid kapcsolatok (jelenleg)
- Szolgáltatásvégpontok (jelenleg)
- Azure Content Delivery Network (jelenleg)
- Path mappings
A pontok felcserélésekor a következő beállítások nem lesznek felcserélve:
- Az előző listában nem említett általános beállítások
- Végpontok közzététele
- Egyéni tartománynevek
- Nem nyilvános tanúsítványok és TLS/SSL-beállítások
- Méretezési beállítások
- WebJobs ütemezők
- IP-korlátozások
- Mindig bekapcsolva
- Diagnosztikai beállítások
- Eltérő eredetű erőforrások megosztása (CORS)
- Virtuális hálózat integrációja
- Felügyelt identitások és kapcsolódó beállítások
- Beállítások, amelyek
_EXTENSION_VERSION
utótaggal végződnek - A Service Connector által létrehozott beállítások
Note
A beállítások felcserélhetővé tétele érdekében adja hozzá az alkalmazásbeállítást WEBSITE_OVERRIDE_PRESERVE_DEFAULT_STICKY_SLOT_SETTINGS
az alkalmazás minden pontjához. Állítsa be az értékét a következőre 0
: vagy false
. Ezek a beállítások vagy felcserélhetők, vagy nem cserélhetők fel. Egyes beállításokat nem lehet felcserélni, a többit nem. A felügyelt identitások soha nem cserélődnek fel. This override app setting doesn't affect them.
Bizonyos alkalmazásbeállítások, amelyek a nem felcserélt beállításokra vonatkoznak, szintén nincsenek felcserélve. Például azért, mert a diagnosztikai beállítások nincsenek felcserélve, a kapcsolódó alkalmazásbeállítások WEBSITE_HTTPLOGGING_RETENTION_DAYS
DIAGNOSTICS_AZUREBLOBRETENTIONDAYS
például nem cserélődnek fel, még akkor sem, ha nem jelennek meg pontbeállításokként.
To configure an app setting or connection string to stick to a specific slot that isn't swapped:
Go to Settings>Environment Variable for that slot.
Adjon hozzá vagy szerkesszen egy beállítást, majd válassza az Üzembehelyezési pont beállítását. Ha bejelöli ezt a jelölőnégyzetet, az App Service azt jelzi, hogy a beállítás nem cserélhető fel.
Válassza az Alkalmazás lehetőséget.
Üzembehelyezési pontok felcserélése
Az üzembehelyezési pontok felcserélhetők az alkalmazás Üzembehelyezési pontok lapján és az Áttekintés lapon.
Mielőtt felcserél egy alkalmazást egy üzembehelyezési pontról az éles környezetbe, győződjön meg arról, hogy az éles környezet a célhely, és hogy a forráshely összes beállítása pontosan úgy van konfigurálva, ahogyan éles környezetben szeretné őket használni.
Nyissa meg az alkalmazás üzembehelyezési pontjainak lapját, és válassza a Felcserélés lehetőséget.
A Felcserélés párbeszédpanel a módosítani kívánt forrás- és célhelyek beállításait jeleníti meg.
Válassza ki a kívánt forrás- és célhelyeket. Usually, the target is the production slot. Válassza továbbá a Forrás pont módosításait és a Célhely módosításai fület, és ellenőrizze, hogy a konfigurációs módosítások várhatók-e. When you finish, you can swap the slots immediately by selecting Start Swap.
Ha szeretné látni, hogy a célhely hogyan futna az új beállításokkal a felcserélés előtt, ne válassza a Felcserélés indítása lehetőséget. Kövesse a jelen cikk későbbi, előzetes verzióval való felcserélése című szakasz utasításait.
A párbeszédpanel bezárásához válassza a bezárása lehetőséget.
Ha bármilyen problémája van, olvassa el a jelen cikk későbbi részében a felcserélések hibaelhárítását ismertető cikket.
Felcserélés előzetes verzióval (többfázisú felcserélés)
Before you swap into production as the target slot, validate that the app runs with the swapped settings. A forráshelyet a csere befejezése előtt is bemelegíti a rendszer, ami kritikus fontosságú alkalmazások esetében kívánatos.
When you perform a swap with preview, App Service performs the same swap operation but pauses after the first step. Ezután ellenőrizheti az eredményt a teszthelyen, mielőtt végrehajtja a cserét.
If you cancel the swap, App Service reapplies configuration elements to the source slot.
Note
You can't use swap with preview when site authentication is enabled in one of the slots.
Kövesse az üzembehelyezési pontok felcserélése szakasz lépéseit, de válassza a Felcserélés végrehajtása előzetes verzióval lehetőséget.
A párbeszédpanel bemutatja, hogyan változik a forráshely konfigurációja az első fázisban, és hogyan változik a forrás- és célhely a második fázisban.
Ha készen áll a felcserélés indítására, válassza a Felcserélés indítása lehetőséget.
Amikor az első fázis befejeződik, a párbeszédpanel értesíti Önt. Preview the swap in the source slot by going to
https://<app_name>-<source-slot-name>.azurewebsites.net
.Ha készen áll a függőben lévő felcserélés befejezésére, válassza a Felcserélés befejezéseműveletben lehetőséget, majd válassza a Felcserélés befejezése gombot.
Függőben lévő felcserélés megszakításához válassza a Mégse felcserélés lehetőséget, majd válassza a Mégse felcserélés gombot.
Ha végzett, a párbeszédpanel bezárásához kattintson a Bezárás gombra.
Ha bármilyen problémája van, olvassa el a jelen cikk későbbi részében a felcserélések hibaelhárítását ismertető cikket.
Roll back a swap
If any errors occur in the target slot (for example, the production slot) after a slot swap, restore the slots to their pre-swap states by swapping the same two slots immediately.
Automatikus felcserélés konfigurálása
Az automatikus felcserélés leegyszerűsíti az Azure DevOps-forgatókönyveket, ahol az alkalmazást folyamatosan szeretné üzembe helyezni nulla hidegindítással és nulla állásidővel az alkalmazás ügyfelei számára. When auto swap is enabled from a slot into production, every time you push your code changes to that slot, App Service automatically swaps the app into production after it's warmed up in the source slot.
Note
Az automatikus felcserélés nem támogatott a Linuxon és a Web App for Containersben futó webalkalmazásokban.
Before you configure auto swap for the production slot, consider testing it on a nonproduction target slot.
Nyissa meg az alkalmazás erőforráslapját. Select Deployment>Deployment slots, and then select the desired source slot.
A bal oldali menüben válassza a Beállítások>konfigurációja>Általános beállítások lehetőséget.
Ha az automatikus felcserélés engedélyezve van, válassza a Be lehetőséget. For Auto swap deployment slot, select the target slot. Ezután válassza a Mentés lehetőséget a parancssávon.
Run a code push to the source slot. Az automatikus felcserélés rövid idő után történik. The update is reflected at your target slot's URL.
Ha bármilyen problémája van, olvassa el a jelen cikk későbbi részében a felcserélések hibaelhárítását ismertető cikket.
Egyéni bemelegítés megadása
Egyes alkalmazások egyéni bemelegítési műveleteket igényelhetnek a felcserélés előtt. Ezeket az egyéni műveleteket a applicationInitialization
konfigurációs elem használatával a Web.config
-ban/-ben adhatja meg. The swap operation waits for this custom warm-up to finish before swapping with the target slot. Íme egy mintatöredék Web.config
:
<system.webServer>
<applicationInitialization>
<add initializationPage="/" hostName="[app hostname]" />
<add initializationPage="/Home/About" hostName="[app hostname]" />
</applicationInitialization>
</system.webServer>
Az elem testreszabásával kapcsolatos további információkért applicationInitialization
tekintse meg a leggyakoribb üzembehelyezési pont felcserélésével kapcsolatos hibákról és azok javításáról szóló blogbejegyzést.
A bemelegítési viselkedést az alábbi alkalmazásbeállítások használatával is testre szabhatja:
-
WEBSITE_SWAP_WARMUP_PING_PATH
: A HTTP-kapcsolaton keresztüli pingelés elérési útja a webhely bemelegítéséhez. Adja hozzá ezt az alkalmazásbeállítást egy egyéni elérési út megadásával, amely egy perjellel kezdődik értékként. Például:/statuscheck
. Az alapértelmezett érték/
. -
WEBSITE_SWAP_WARMUP_PING_STATUSES
: Érvényes HTTP-válaszkódok a bemelegítési művelethez. Adja hozzá ezt az alkalmazásbeállítást a HTTP-kódok vesszővel tagolt listájával. Például:200,202
. Ha a visszaadott állapotkód nem szerepel a listában, a bemelegítési és felcserélési műveletek leállnak. Alapértelmezés szerint az összes válaszkód érvényes. -
WEBSITE_WARMUP_PATH
: Relatív elérési út a webhelyen, amelyet a webhely újraindulásakor (nem csak a pontcserék során) kell pingelni. Example values include/statuscheck
or the root path,/
.
A <applicationInitialization>
konfigurációs elem minden alkalmazásindítás része, míg a bemelegítési viselkedés alkalmazásbeállításai csak a pontcserékre vonatkoznak.
Ha bármilyen problémája van, olvassa el a jelen cikk későbbi részében a felcserélések hibaelhárítását ismertető cikket.
Monitor a swap
Ha a felcserélési művelet végrehajtása hosszú időt vesz igénybe, a tevékenységnaplóban információkat kaphat a felcserélési műveletről.
Az alkalmazás erőforráslapján a portál bal oldali menüjében válassza a Tevékenységnapló lehetőséget.
A napló lekérdezésében felcserélési művelet jelenik meg a következőként
Swap Web App Slots
: . A részletek megtekintéséhez bontsa ki, és válassza ki az egyik alművet vagy hibát.
A termelési forgalom automatikus átirányítása
By default, all client requests to the app's production URL (http://<app_name>.azurewebsites.net
) are routed to the production slot. A forgalom egy részét átirányíthatja egy másik pontra. Ez a funkció akkor hasznos, ha felhasználói visszajelzésre van szüksége egy új frissítéshez, de még nem áll készen arra, hogy éles környezetben kiadja.
Nyissa meg a webalkalmazás erőforráslapját, és válassza az Üzembe helyezés>Üzembe helyezési pontok lehetőséget.
A Forgalom % oszlopban adja meg a forgalom százalékos értékét (0 és 100 között), amely az irányítandó teljes forgalom mennyiségét jelzi. Ezután válassza a Mentés lehetőséget.
A beállítás mentése után az ügyfelek megadott százalékos aránya véletlenszerűen a nem gyártási ponthoz lesz irányítva.
Miután az ügyfél automatikusan egy adott ponthoz lett irányítva, egy órán keresztül vagy a cookie-k törléséig rögzítve lesz. Az ügyfélböngészőben láthatja, hogy a munkamenete melyik slothoz van rögzítve, ha megtekinti a x-ms-routing-name
cookie-t az HTTP-fejlécben. A request that's routed to the staging slot has the cookie x-ms-routing-name=staging
. A request that's routed to the production slot has the cookie x-ms-routing-name=self
.
Route production traffic manually
Az automatikus forgalomirányítás mellett az App Service átirányíthatja a kéréseket egy adott pontra. Ez a lehetőség akkor hasznos, ha azt szeretné, hogy a felhasználók a bétaalkalmazást is bekapcsolhassák vagy kikapcsolhassák. A termelési forgalom manuális irányításához használja a lekérdezési x-ms-routing-name
paramétert.
Ha például azt szeretné, hogy a felhasználók kikapcsolják a bétaalkalmazást, ezt a hivatkozást elhelyezheti a weblapján:
<a href="<webappname>.azurewebsites.net/?x-ms-routing-name=self">Go back to production app</a>
A karakterlánc x-ms-routing-name=self
megadja a gyártási helyet. After the client browser accesses the link, it's redirected to the production slot. Every subsequent request has the x-ms-routing-name=self
cookie that pins the session to the production slot.
To let users opt in to your beta app, set the same query parameter to the name of the nonproduction slot. Itt egy példa:
<webappname>.azurewebsites.net/?x-ms-routing-name=staging
Alapértelmezés szerint az új pontok útválasztási szabálya 0%
szürkén jelenik meg. When you explicitly set this value to 0%
(shown in black text), your users can access the staging slot manually by using the x-ms-routing-name
query parameter. They won't be routed to the slot automatically because the routing percentage is set to 0
. This configuration is an advanced scenario where you can hide your staging slot from the public while allowing internal teams to test changes on the slot.
Delete a slot
Keresse meg és válassza ki az alkalmazást.
Válassza a Üzembe helyezés>Üzembe helyezési pontok>, majd a törlendő slot>, és végül az Áttekintés elemet. The app type appears as App Service (Slot) to remind you that you're viewing a deployment slot.
Állítsa le a pontot, és állítsa nullára a forgalmat a ponton.
A parancssávon válassza a Törlés lehetőséget.
Automatizálás Resource Manager-sablonokkal
Az Azure Resource Manager-sablonok deklaratív JSON-fájlok az Azure-erőforrások üzembe helyezésének és konfigurálásának automatizálásához. A helyek Resource Manager-sablonok használatával történő cseréjéhez két tulajdonságot kell beállítania az Microsoft.Web/sites/slots
és Microsoft.Web/sites
erőforrásokon.
-
buildVersion
: Egy karakterlánc tulajdonság, amely a slotban üzembe helyezett alkalmazás aktuális verzióját jelöli. Például:v1
,1.0.0.1
vagy2019-09-20T11:53:25.2887393-07:00
. -
targetBuildVersion
: Sztringtulajdonság, amely meghatározza, hogy a pontnak milyenbuildVersion
értékkel kell rendelkeznie. Ha aztargetBuildVersion
érték nem egyenlő az aktuálisbuildVersion
értékkel, a felcserélési műveletet a megadottbuildVersion
értékkel rendelkező pont megkeresésével indítja el.
Példa Erőforrás-kezelő sablonja
The following Resource Manager template swaps two slots by updating the buildVersion
value of the staging
slot and setting the targetBuildVersion
value on the production slot. Rendelkeznie kell egy staging
nevű hellyel.
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"my_site_name": {
"defaultValue": "SwapAPIDemo",
"type": "String"
},
"sites_buildVersion": {
"defaultValue": "v1",
"type": "String"
}
},
"resources": [
{
"type": "Microsoft.Web/sites/slots",
"apiVersion": "2018-02-01",
"name": "[concat(parameters('my_site_name'), '/staging')]",
"location": "East US",
"kind": "app",
"properties": {
"buildVersion": "[parameters('sites_buildVersion')]"
}
},
{
"type": "Microsoft.Web/sites",
"apiVersion": "2018-02-01",
"name": "[parameters('my_site_name')]",
"location": "East US",
"kind": "app",
"dependsOn": [
"[resourceId('Microsoft.Web/sites/slots', parameters('my_site_name'), 'staging')]"
],
"properties": {
"targetBuildVersion": "[parameters('sites_buildVersion')]"
}
}
]
}
This Resource Manager template is idempotent. Az eljárást többször is végrehajthatja, és ugyanazt a slotok állapotát hozhatja létre. A sablon módosítása nélkül ugyanannak a sablonnak a későbbi futtatásai nem váltanak ki pontcserét, mert a pontok már a kívánt állapotban vannak.
Csereügyletek hibaelhárítása
Ha hiba történik egy pontcserélés során, a hiba a következőben D:\home\LogFiles\eventlog.xml
jelenik meg: . A rendszer az alkalmazásspecifikus hibanaplóban is naplózza.
Íme néhány gyakori felcserélési hiba:
Az alkalmazás gyökerére küldött HTTP-kérés időzítve van. A felcserélési művelet minden HTTP-kérelemre 90 másodpercet vár, és legfeljebb ötször próbálkozik újra. Ha az összes újrapróbálkozási művelet túllépi az időkorlátot, a felcserélési művelet leáll.
A helyi gyorsítótár inicializálása meghiúsulhat, ha az alkalmazás tartalma meghaladja a helyi gyorsítótárhoz megadott helyi lemezkvótát. További információkért tekintse meg az Azure App Service helyi gyorsítótárának áttekintését.
Egy helyfrissítési művelet során a következő hiba léphet fel: "A pont nem módosítható, mert a konfigurációs beállítások fel lettek készítve a felcserélésre." Ez a hiba akkor fordulhat elő, ha egy többfázisú felcserélés első fázisa befejeződött, de a második fázis nem történt meg. Akkor is előfordulhat, ha egy felcserélés meghiúsult. A probléma kétféleképpen oldható meg:
- Szakítsa meg a felcserélési műveletet, amely visszaállítja a helyet a régi állapotba.
- Hajtsa végre a felcserélési műveletet, amely frissíti a webhelyet a kívánt új állapotra.
A felcserélési művelet megszakításáról vagy befejezéséről a cikk korábbi, előzetes verziójú (többfázisú felcserélés) című szakaszában olvashat.
Az egyéni bemelegítés során a HTTP-kérések belsőleg, a külső URL-címen való áthaladás nélkül jönnek létre. They can fail with certain URL rewrite rules in
Web.config
. Például a tartománynevek átirányítására vagy a HTTPS kényszerítésére vonatkozó szabályok megakadályozhatják, hogy a bemelegítési kérések elérjék az alkalmazás kódját. A probléma megoldásához módosítsa az átírási szabályokat az alábbi két feltétel hozzáadásával:<conditions> <add input="{WARMUP_REQUEST}" pattern="1" negate="true" /> <add input="{REMOTE_ADDR}" pattern="^100?\." negate="true" /> ... </conditions>
Egyéni bemelegítés nélkül az URL-átírási szabályok továbbra is blokkolhatják a HTTP-kéréseket. A probléma megoldásához módosítsa az átírási szabályokat az alábbi feltétel hozzáadásával:
<conditions> <add input="{REMOTE_ADDR}" pattern="^100?\." negate="true" /> ... </conditions>
A pontcserék után előfordulhat, hogy az alkalmazás váratlan újraindítást tapasztal. Az újraindítások azért történnek, mert a felcserélés után a gazdagépnév kötésének konfigurációja eltér az eredetitől. Ez a helyzet önmagában azonban nem okoz újraindítást. Bizonyos mögöttes tárolási események, például a tárolókötet feladatátvételei azonban észlelhetik ezeket az eltéréseket, és az összes feldolgozói folyamatot újraindításra kényszeríthetik.
Az ilyen típusú újraindítások minimalizálásához állítsa be az
WEBSITE_ADD_SITENAME_BINDINGS_IN_APPHOST_CONFIG=1
alkalmazásbeállítást az összes sloton. Ez az alkalmazásbeállítás azonban nem működik a Windows Communication Foundation (WCF) alkalmazásokkal.