Vytvoření webové aplikace PHP ve službě Aplikace Azure Service
Azure App Service je vysoce škálovatelná služba s automatickými opravami pro hostování webů. Tento rychlý úvodní kurz ukazuje, jak nasadit aplikaci PHP do služby Aplikace Azure Service ve Windows.
Pomocí Azure CLI ve službě Cloud Shell vytvoříte webovou aplikaci a pomocí Gitu do této webové aplikace nasadíte vzorový kód PHP.
Tento postup můžete použít v případě počítačů se systémem Mac, Windows nebo Linux. Pokud máte nainstalované všechny požadované prostředky, zabere vám tento postup zhruba pět minut.
Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet Azure před tím, než začnete.
Požadavky
K provedení kroků v tomto kurzu Rychlý start je potřeba:
Místní stažení ukázky
V okně terminálu spusťte následující příkazy. Naklonuje ukázkovou aplikaci do místního počítače a přejde do adresáře obsahujícího ukázkový kód.
git clone https://github.com/Azure-Samples/php-docs-hello-world cd php-docs-hello-world
Ujistěte se, že výchozí větev je
main
.git branch -m main
Tip
App Service nevyžaduje změnu názvu větve. Vzhledem k tomu, že mnoho úložišť mění výchozí větev na
main
, tento rychlý start také ukazuje, jak nasadit úložiště zmain
.
Místní spuštění aplikace
Spusťte aplikaci místně, abyste viděli, jak by měla vypadat po nasazení do Azure. Otevřete okno terminálu a pomocí příkazu
php
spusťte integrovaný webový server PHP.php -S localhost:8080
Otevřete webový prohlížeč a přejděte do ukázkové aplikace na adrese
http://localhost:8080
.Zobrazí se zpráva Hello World! z ukázkové aplikace zobrazené na stránce.
V okně terminálu ukončete webový server stisknutím Ctrl + C.
Azure Cloud Shell
Azure hostí interaktivní prostředí Azure Cloud Shell, které můžete používat v prohlížeči. Pro práci se službami Azure můžete v prostředí Cloud Shell použít buď Bash, nebo PowerShell. Předinstalované příkazy Cloud Shellu můžete použít ke spuštění kódu v tomto článku, aniž byste museli instalovat cokoli do místního prostředí.
Spuštění služby Azure Cloud Shell:
Možnost | Příklad nebo odkaz |
---|---|
Vyberte Vyzkoušet v pravém horním rohu bloku kódu nebo příkazu. Výběrem možnosti Vyzkoušet se kód ani příkaz automaticky nekopíruje do Cloud Shellu. | |
Přejděte na adresu https://shell.azure.com nebo výběrem tlačítka Spustit Cloud Shell otevřete Cloud Shell v prohlížeči. | |
Zvolte tlačítko Cloud Shell v pruhu nabídky v pravém horním rohu webu Azure Portal. |
Použití Azure Cloud Shellu:
Spusťte Cloud Shell.
Výběrem tlačítka Kopírovat v bloku kódu (nebo bloku příkazů) zkopírujte kód nebo příkaz.
Vložte kód nebo příkaz do relace Cloud Shellu tak, že ve Windows a Linuxu vyberete ctrl+Shift+V nebo vyberete Cmd+Shift+V v macOS.
Stisknutím klávesy Enter spusťte kód nebo příkaz.
Konfigurace uživatele nasazení
FTP a místní Git se můžou nasadit do webové aplikace Azure pomocí uživatele nasazení. Jakmile nakonfigurujete uživatele nasazení, můžete ho použít pro všechna nasazení Azure. Uživatelské jméno a heslo nasazení na úrovni účtu se liší od přihlašovacích údajů předplatného Azure.
Pokud chcete nakonfigurovat uživatele nasazení, spusťte příkaz az webapp deployment user set v Azure Cloud Shellu. Nahraďte <uživatelské jméno> a <heslo> uživatelským jménem a heslem pro nasazení.
- Uživatelské jméno musí být v Rámci Azure jedinečné a pro místní zápisy z Gitu nesmí obsahovat symbol @.
- Heslo musí mít alespoň osm znaků, přičemž dva z následujících tří prvků: písmena, číslice a symboly.
az webapp deployment user set --user-name <username> --password <password>
Výstup JSON zobrazuje heslo jako null
. Pokud se zobrazí chyba 'Conflict'. Details: 409
, změňte uživatelské jméno. Pokud se zobrazí chyba 'Bad Request'. Details: 400
, použijte silnější heslo.
Poznamenejte si uživatelské jméno a heslo, které chcete použít k nasazení webových aplikací.
Vytvoření skupiny zdrojů
Skupina prostředků je logický kontejner, do kterého se nasazují a spravují prostředky Azure, jako jsou webové aplikace, databáze a účty úložiště. Později se například můžete rozhodnout odstranit celou skupinu prostředků v jednom jednoduchém kroku.
Ve službě Cloud Shell vytvořte skupinu prostředků pomocí příkazu az group create
. Následující příklad vytvoří skupinu prostředků myResourceGroup v umístění Západní Evropa. Pokud chcete zobrazit všechna podporovaná umístění pro službu App Service na úrovni Free, spusťte příkaz az appservice list-locations --sku FREE
.
az group create --name myResourceGroup --location "West Europe"
Obvykle budete svoji skupinu prostředků a prostředky vytvářet v oblasti, kterou máte blízko.
Po dokončení příkazu se ve výstupu JSON zobrazí vlastnosti skupiny prostředků.
Vytvoření plánu služby Azure App Service
Ve službě Cloud Shell vytvořte pomocí příkazu az appservice plan create
plán služby App Service.
Následující příklad vytvoří plán služby App Service s názvem myAppServicePlan
v cenové úrovni Free:
az appservice plan create --name myAppServicePlan --resource-group myResourceGroup --sku FREE --is-linux
Po vytvoření plánu služby App Service se v rozhraní příkazového řádku Azure zobrazí podobné informace jako v následujícím příkladu:
{ "freeOfferExpirationTime": null, "geoRegion": "West Europe", "hostingEnvironmentProfile": null, "id": "/subscriptions/0000-0000/resourceGroups/myResourceGroup/providers/Microsoft.Web/serverfarms/myAppServicePlan", "kind": "linux", "location": "West Europe", "maximumNumberOfWorkers": 1, "name": "myAppServicePlan", < JSON data removed for brevity. > "targetWorkerSizeId": 0, "type": "Microsoft.Web/serverfarms", "workerTierName": null }
Vytvoření webové aplikace
Ve službě Cloud Shell pomocí příkazu
az webapp create
vytvořte v plánu služby App ServicemyAppServicePlan
webovou aplikaci.V následujícím příkladu nahraďte
<app-name>
globálně jedinečným názvem aplikace (platné znaky jsoua-z
,0-9
a-
). Modul runtime je nastavený naPHP|7.4
. Pokud chcete zobrazit všechny podporované moduly runtime, spusťte příkazaz webapp list-runtimes
.az webapp create --resource-group myResourceGroup --plan myAppServicePlan --name <app-name> --runtime 'PHP|8.1' --deployment-local-git
Po vytvoření webové aplikace Azure CLI zobrazí výstup podobný následujícímu příkladu:
Local git is configured with url of 'https://<username>@<app-name>.scm.azurewebsites.net/<app-name>.git' { "availabilityState": "Normal", "clientAffinityEnabled": true, "clientCertEnabled": false, "cloningInfo": null, "containerSize": 0, "dailyMemoryTimeQuota": 0, "defaultHostName": "<app-name>.azurewebsites.net", "enabled": true, < JSON data removed for brevity. > }
Vytvořili jste prázdnou novou webovou aplikaci s povoleným nasazením Gitu.
Poznámka:
Adresa URL vzdáleného úložiště Git se zobrazuje ve vlastnosti
deploymentLocalGitUrl
ve formátuhttps://<username>@<app-name>.scm.azurewebsites.net/<app-name>.git
. Tuto adresu URL si uložte, protože ji budete potřebovat později.Přejděte do vaší nově vytvořené webové aplikace. Nahraďte <název> aplikace jedinečným názvem aplikace vytvořeným v předchozím kroku.
http://<app-name>.azurewebsites.net
Nová webová aplikace by měla vypadat takto:
Přenos z Gitu do Azure
Vzhledem k tomu, že větev nasazujete
main
, musíte pro aplikacimain
App Service nastavit výchozí větev nasazení (viz Změna větve nasazení). V Cloud ShelluDEPLOYMENT_BRANCH
nastavte nastavení aplikace pomocíaz webapp config appsettings set
příkazu.az webapp config appsettings set --name <app-name> --resource-group myResourceGroup --settings DEPLOYMENT_BRANCH='main'
Zpět v okně místního terminálu přidejte vzdálené úložiště Azure do místního úložiště Git. Nahraďte deploymentLocalGitUrl-from-create-step> adresou URL vzdáleného úložiště Git, který jste uložili z vytvoření webové aplikace.<
git remote add azure <deploymentLocalGitUrl-from-create-step>
Nasaďte aplikaci do vzdáleného úložiště Azure pomocí následujícího příkazu. Když vás Git Credential Manager vyzve k zadání přihlašovacích údajů, ujistěte se, že jste zadali přihlašovací údaje, které jste vytvořili v konfiguraci místního nasazení Gitu, a ne přihlašovací údaje, které používáte pro přihlášení k webu Azure Portal.
git push azure main
Spuštění tohoto příkazu může trvat několik minut. Při spuštění příkaz zobrazí podobné informace jako v následujícím příkladu:
Counting objects: 2, done. Delta compression using up to 4 threads. Compressing objects: 100% (2/2), done. Writing objects: 100% (2/2), 352 bytes | 0 bytes/s, done. Total 2 (delta 1), reused 0 (delta 0) remote: Updating branch 'main'. remote: Updating submodules. remote: Preparing deployment for commit id '25f18051e9'. remote: Generating deployment script. remote: Running deployment command... remote: Handling Basic Web Site deployment. remote: Kudu sync from: '/home/site/repository' to: '/home/site/wwwroot' remote: Copying file: '.gitignore' remote: Copying file: 'LICENSE' remote: Copying file: 'README.md' remote: Copying file: 'index.php' remote: Ignoring: .git remote: Finished successfully. remote: Running post deployment command(s)... remote: Deployment successful. To https://<app-name>.scm.azurewebsites.net/<app-name>.git cc39b1e..25f1805 main -> main
Přechod do aplikace
V prohlížeči zadejte adresu nasazené aplikace.
http://<app-name>.azurewebsites.net
Vzorový kód PHP je spuštěný ve webové aplikaci služby Azure App Service.
Gratulujeme! Nasadili jste svoji první aplikaci v PHP do služby App Service.
Místní aktualizace a opětovné nasazení kódu
Pomocí místního textového editoru otevřete soubor
index.php
, který je součástí PHP aplikace, a proveďte malou změnu textu v řetězci vedleecho
:echo "Hello Azure!";
V místním okně terminálu potvrďte změny v Gitu a potom nasdílejte změny kódu do Azure.
git commit -am "updated output" git push azure main
Po dokončení nasazení se vraťte do okna prohlížeče, které se otevřelo v kroku Přechod do aplikace, a aktualizujte zobrazení stránky.
Správa nové aplikace Azure
Pokud chcete spravovat webovou aplikaci, kterou jste vytvořili, přejděte na web Azure Portal. Vyhledejte a vyberte App Services.
Vyberte název aplikace Azure.
Zobrazí se stránka Přehled vaší webové aplikace. Tady můžete provádět základní úlohy správy, jako je procházení, zastavení, restartování a odstranění.
Nabídka webové aplikace nabízí různé možnosti konfigurace aplikace.
Vyčištění prostředků
V předchozích krocích jste vytvořili prostředky Azure ve skupině prostředků. Pokud předpokládáte, že už tyto prostředky nebudete potřebovat, odstraňte skupinu prostředků spuštěním následujícího příkazu ve službě Cloud Shell:
az group delete --name myResourceGroup
Spuštění tohoto příkazu může trvat přibližně minut.
Azure App Service je vysoce škálovatelná služba s automatickými opravami pro hostování webů. V tomto rychlém startu se dozvíte, jak nasadit aplikaci PHP do služby Aplikace Azure Service v Linuxu.
Tento postup můžete použít v případě počítačů se systémem Mac, Windows nebo Linux. Pokud máte nainstalované všechny požadované prostředky, zabere vám tento postup zhruba pět minut.
K dokončení tohoto rychlého startu je potřeba:
- Účet Azure s aktivním předplatným. Vytvoření účtu zdarma
- Git
- PHP
- Azure CLI ke spouštění příkazů v libovolném prostředí pro vytváření a konfiguraci prostředků Azure
1. Získání ukázkového úložiště
Webovou aplikaci můžete vytvořit pomocí Azure CLI v Cloud Shellu a pomocí Gitu můžete do webové aplikace nasadit ukázkový kód PHP.
V okně terminálu spusťte následující příkazy, které naklonují ukázkovou aplikaci do místního počítače a přejděte do kořenového adresáře projektu.
git clone https://github.com/Azure-Samples/php-docs-hello-world cd php-docs-hello-world
Pokud chcete aplikaci spustit místně, spusťte
php
pomocí příkazu integrovaný webový server PHP.php -S localhost:8080
Ve webovém prohlížeči přejděte k ukázkové aplikaci
http://localhost:8080
.V okně terminálu ukončete webový server stisknutím Ctrl + C.
2. Nasazení kódu aplikace do Azure
Azure CLI obsahuje příkaz az webapp up
, který vytvoří potřebné prostředky a nasadí vaši aplikaci v jednom kroku.
V terminálu pomocí příkazu nasaďte kód do místní složky az webapp up
:
az webapp up --runtime "PHP:8.2" --os-type=linux
- Pokud se
az
příkaz nerozpozná, ujistěte se, že máte nainstalované Rozhraní příkazového řádku Azure. - Argument
--runtime "PHP:8.2"
vytvoří webovou aplikaci s PHP verze 8.2. - Argument
--os-type=linux
vytvoří webovou aplikaci na App Service v Linuxu. - Volitelně můžete zadat název s argumentem
--name <app-name>
. Pokud ho nezadáte, automaticky se vygeneruje název. - Volitelně můžete zahrnout argument
--location <location-name>
, ve kterém<location_name>
je dostupná oblast Azure. Spuštěnímaz account list-locations
příkazu můžete načíst seznam povolených oblastí pro váš účet Azure. - Pokud se zobrazí chyba "Nepodařilo se automaticky rozpoznat zásobník modulu runtime vaší aplikace", ujistěte se, že spouštíte příkaz v adresáři kódu (viz Řešení potíží s automatickým zjišťováním problémů s az webapp up).
Dokončení tohoto příkazu může trvat několik minut. Během spuštění poskytuje zprávy o vytvoření skupiny prostředků, plánu služby App Service a prostředku aplikace, konfiguraci protokolování a nasazení souboru ZIP. Zobrazí se zpráva "Aplikaci můžete spustit na http://< app-name.azurewebsites.net>", což je adresa URL aplikace v Azure.
The webapp '<app-name>' doesn't exist Creating Resource group '<group-name>' ... Resource group creation complete Creating AppServicePlan '<app-service-plan-name>' ... Creating webapp '<app-name>' ... Configuring default logging for the app, if not already enabled Creating zip with contents of dir /home/msangapu/myPhpApp ... Getting scm site credentials for zip deployment Starting zip deployment. This operation can take a while to complete ... Deployment endpoint responded with status code 202 You can launch the app at http://<app-name>.azurewebsites.net { "URL": "http://<app-name>.azurewebsites.net", "appserviceplan": "<app-service-plan-name>", "location": "centralus", "name": "<app-name>", "os": "linux", "resourcegroup": "<group-name>", "runtime_version": "php|8.2", "runtime_version_detected": "0.0", "sku": "FREE", "src_path": "//home//msangapu//myPhpApp" }
Poznámka:
Příkaz az webapp up
provádí tyto akce:
Vytvořte výchozí skupinu prostředků.
Vytvořte výchozí plán služby App Service.
Vytvořte aplikaci se zadaným názvem.
Zip nasadí všechny soubory z aktuálního pracovního adresáře s povolenou automatizací sestavení.
Uložte parametry do mezipaměti místně v souboru .azure/config , abyste je nemuseli při pozdějším
az webapp up
az webapp
nasazení s jinými příkazy ze složky projektu zadávat znovu. Hodnoty uložené v mezipaměti se ve výchozím nastavení používají automaticky.
Přejděte do nasazené aplikace ve webovém prohlížeči na adrese URL http://<app-name>.azurewebsites.net
.
Vzorový kód PHP běží ve službě Aplikace Azure Service.
Gratulujeme! Nasadili jste svou první aplikaci v PHP do služby App Service pomocí webu Azure Portal.
3. Aktualizace a opětovné nasazení aplikace
Pomocí místního textového editoru otevřete soubor
index.php
, který je součástí PHP aplikace, a proveďte malou změnu textu v řetězci vedleecho
:echo "Hello Azure!";
Uložte změny a znovu nasaďte aplikaci pomocí příkazu az webapp up s těmito argumenty:
az webapp up --runtime "PHP:8.2" --os-type=linux
Po dokončení nasazení se vraťte do okna prohlížeče, které se otevřelo během procházení kroku aplikace , a aktualizujte stránku.
4. Správa nové aplikace Azure
Pokud chcete spravovat webovou aplikaci, kterou jste vytvořili, přejděte na web Azure Portal. Vyhledejte a vyberte App Services.
Vyberte název aplikace Azure.
Měla by se zobrazit stránka Přehled vaší webové aplikace. Tady můžete provádět základní úlohy správy, jako je procházení, zastavení, restartování a odstranění.
Nabídka webové aplikace nabízí různé možnosti konfigurace aplikace.
5. Vyčištění prostředků
Až budete s ukázkovou aplikací hotovi, můžete z Azure odebrat všechny prostředky aplikace. Pomůže vám vyhnout se dodatečným poplatkům a udržovat vaše předplatné Azure přehledné. Odebráním skupiny prostředků se také odeberou všechny prostředky ve skupině prostředků a je nejrychlejší způsob, jak odebrat všechny prostředky Azure pro vaši aplikaci.
Odstraňte skupinu prostředků pomocí příkazu az group delete .
az group delete --name myResourceGroup
Spuštění tohoto příkazu trvá minutu.