Criar um aplicativo Web PHP no Serviço de Aplicativo do Azure
O Serviço de Aplicações do Azure oferece um serviço de alojamento na Web altamente dimensionável e com correção automática. Este tutorial de início rápido mostra como implantar um aplicativo PHP no Serviço de Aplicativo do Azure no Windows.
Crie a aplicação Web com a CLI do Azure no Cloud Shell e utilize o Git para implementar o código PHP de exemplo para a aplicação Web.
Pode seguir os passos aqui indicados num computador Mac, Windows ou Linux. Depois de instalados os pré-requisitos, demora cerca de cinco minutos a concluir todos os passos.
Se não tiver uma subscrição do Azure, crie uma conta gratuita do Azure antes de começar.
Pré-requisitos
Para concluir este guia de início rápido:
Transferir o exemplo localmente
Numa janela de terminal, execute os comandos seguintes. Ele clonará o aplicativo de exemplo para sua máquina local e navegará até o diretório que contém o código de exemplo.
git clone https://github.com/Azure-Samples/php-docs-hello-world cd php-docs-hello-world
Verifique se a ramificação padrão é
main
.git branch -m main
Gorjeta
A alteração do nome da filial não é exigida pelo Serviço de Aplicativo. No entanto, como muitos repositórios estão alterando sua ramificação padrão para
main
, este guia de início rápido também mostra como implantar um repositório a partir domain
.
Executar a aplicação localmente
Execute a aplicação localmente, para ver que aspeto deveria ter quando a implemente no Azure. Abra uma janela do terminal e use o comando
php
para iniciar o servidor Web PHP incorporado.php -S localhost:8080
Abra um browser e navegue para a aplicação de exemplo em
http://localhost:8080
.Você vê a mensagem Hello World! do aplicativo de exemplo exibido na página.
Na janela do terminal, prima Ctrl+C para sair do servidor Web.
Azure Cloud Shell
O Azure aloja o Azure Cloud Shell, um ambiente de shell interativo que pode utilizar através do seu browser. Pode utilizar o Bash ou o PowerShell com o Cloud Shell para trabalhar com os serviços do Azure. Você pode usar os comandos pré-instalados do Cloud Shell para executar o código neste artigo, sem precisar instalar nada em seu ambiente local.
Para iniciar o Azure Cloud Shell:
Opção | Exemplo/Ligação |
---|---|
Selecione Experimentar no canto superior direito de um código ou bloco de comandos. Selecionar Experimentar não copia automaticamente o código ou comando para o Cloud Shell. | |
Aceda a https://shell.azure.com ou selecione o botão Iniciar Cloud Shell para abrir o Cloud Shell no browser. | |
Selecione o botão Cloud Shell na barra de menus, na parte direita do portal do Azure. |
Para usar o Azure Cloud Shell:
Inicie o Cloud Shell.
Selecione o botão Copiar em um bloco de código (ou bloco de comando) para copiar o código ou comando.
Cole o código ou comando na sessão do Cloud Shell selecionando Ctrl+Shift+V no Windows e Linux ou selecionando Cmd+Shift+V no macOS.
Selecione Enter para executar o código ou comando.
Configurar um utilizador de implementação
O FTP e o Git local podem ser implantados em um aplicativo Web do Azure usando um usuário de implantação. Depois de configurar seu usuário de implantação, você pode usá-lo para todas as suas implantações do Azure. Seu nome de usuário e senha de implantação no nível de conta são diferentes de suas credenciais de assinatura do Azure.
Para configurar o usuário de implantação, execute o comando az webapp deployment user set no Azure Cloud Shell. Substitua <o nome> de usuário e <a senha> por um nome de usuário e senha de usuário de implantação.
- O nome de usuário deve ser exclusivo no Azure e, para pushes locais do Git, não deve conter o símbolo '@'.
- A senha deve ter pelo menos oito caracteres, com dois dos três elementos a seguir: letras, números e símbolos.
az webapp deployment user set --user-name <username> --password <password>
A saída JSON mostra a senha como null
. Se obtiver o erro 'Conflict'. Details: 409
, altere o nome de utilizador. Se obtiver o 'Bad Request'. Details: 400
erro, utilize uma palavra-passe mais forte.
Registre seu nome de usuário e senha para usar para implantar seus aplicativos Web.
Criar um grupo de recursos
Um grupo de recursos é um contêiner lógico no qual os recursos do Azure, como aplicativos Web, bancos de dados e contas de armazenamento, são implantados e gerenciados. Por exemplo, pode optar por eliminar todo o grupo de recursos num único passo simples mais tarde.
No Cloud Shell, crie um grupo de recursos com o comando az group create
. O exemplo seguinte cria um grupo de recursos com o nome myResourceGroup, na localização Europa Ocidental. Para ver todas as localizações suportadas para o Serviço de Aplicações no escalão Gratuito, execute o comando az appservice list-locations --sku FREE
.
az group create --name myResourceGroup --location "West Europe"
Geralmente, o grupo de recursos e os recursos são criados numa região perto de si.
Quando o comando for concluído, uma saída JSON mostra as propriedades do grupo de recursos.
Criar um plano do Serviço de Aplicações do Azure
No Cloud Shell, crie um plano do Serviço de Aplicações com o comando az appservice plan create
.
O exemplo seguinte cria um plano do Serviço de Aplicações com o nome myAppServicePlan
, que utiliza o escalão de preços Gratuito.
az appservice plan create --name myAppServicePlan --resource-group myResourceGroup --sku FREE --is-linux
Quando o plano do Serviço de Aplicações tiver sido criado, a CLI do Azure mostra informações semelhantes ao seguinte exemplo:
{ "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 }
Criar uma aplicação Web
No Cloud Shell, crie uma aplicação Web no plano do Serviço de Aplicações
myAppServicePlan
com o comandoaz webapp create
.No exemplo a seguir, substitua
<app-name>
com um nome de aplicação globalmente exclusivo (os carateres válidos sãoa-z
,0-9
e-
). O runtime está definido comoPHP|7.4
. Para ver todos os runtimes suportados, executeaz webapp list-runtimes
.az webapp create --resource-group myResourceGroup --plan myAppServicePlan --name <app-name> --runtime 'PHP|8.1' --deployment-local-git
Quando a aplicação Web tiver sido criada, a CLI do Azure mostra informações semelhantes ao seguinte exemplo:
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. > }
Você criou um novo aplicativo Web vazio, com a implantação do git habilitada.
Nota
O URL do Git remoto é apresentado na propriedade
deploymentLocalGitUrl
, com o formatohttps://<username>@<app-name>.scm.azurewebsites.net/<app-name>.git
. Guarde este URL, uma vez que vai precisar dele mais tarde.Navegue para a sua aplicação Web recentemente criada. Substitua <o nome> do aplicativo pelo nome exclusivo do aplicativo criado na etapa anterior.
http://<app-name>.azurewebsites.net
Eis o aspeto que a sua nova aplicação Web deve ter:
Enviar para o Azure a partir do Git
Como você está implantando a
main
ramificação, precisa definir a ramificação de implantação padrão para seu aplicativo do Serviço de Aplicativo comomain
(consulte Alterar ramificação de implantação). No Cloud Shell, defina a configuração doDEPLOYMENT_BRANCH
aplicativo com oaz webapp config appsettings set
comando.az webapp config appsettings set --name <app-name> --resource-group myResourceGroup --settings DEPLOYMENT_BRANCH='main'
Regresse à janela de terminal local e adicione um remoto do Azure ao seu repositório Git local. Substitua deploymentLocalGitUrl-from-create-step> pela URL do controle remoto Git que você salvou em Criar um aplicativo Web.<
git remote add azure <deploymentLocalGitUrl-from-create-step>
Envie para o remoto do Azure para implementar a sua aplicação com o comando seguinte. Quando o Git Credential Manager solicitar credenciais, certifique-se de inserir as credenciais criadas em Configurar implantação local do git, não as credenciais usadas para entrar no portal do Azure.
git push azure main
Esse comando pode levar alguns minutos para ser executado. Ao executar, apresenta informações semelhantes ao exemplo seguinte:
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
Navegar para a aplicação
Utilize o browser para navegar para a aplicação implementada.
http://<app-name>.azurewebsites.net
O código PHP de exemplo está em execução numa aplicação Web do serviço de aplicações do Azure.
Parabéns! Implementou a sua primeira aplicação PHP no Serviço de Aplicações.
Atualizar localmente e reimplementar o código
Utilizando um editor de texto local, abra o ficheiro
index.php
na aplicação PHP e faça uma pequena alteração ao texto na cadeia junto aecho
:echo "Hello Azure!";
Na janela terminal local, consolide as suas alterações no Git e envie as alterações ao código para o Azure.
git commit -am "updated output" git push azure main
Depois de concluída a implementação, volte para a janela do browser aberta durante o passo Navegar para a aplicação e atualize a página.
Gerenciar seu novo aplicativo do Azure
Aceda ao portal do Azure para gerir a aplicação Web que criou. Pesquise e selecione Serviços de Aplicativo.
Selecione o nome do seu aplicativo do Azure.
A página Visão geral do seu aplicativo Web será exibida. Aqui, você pode executar tarefas básicas de gerenciamento como Procurar, Parar, Reiniciar e Excluir.
O menu do aplicativo Web fornece diferentes opções para configurar seu aplicativo.
Clean up resources (Limpar recursos)
Nos passos anteriores, criou os recursos do Azure num grupo de recursos. Se achar que não vai precisar destes recursos no futuro, execute o seguinte comando no Cloud Shell para eliminar o grupo de recursos:
az group delete --name myResourceGroup
Este comando pode demorar alguns minutos a ser executado.
O Serviço de Aplicações do Azure oferece um serviço de alojamento na Web altamente dimensionável e com correção automática. Este guia de início rápido mostra como implantar um aplicativo PHP no Serviço de Aplicativo do Azure no Linux.
Pode seguir os passos aqui indicados num computador Mac, Windows ou Linux. Depois de instalados os pré-requisitos, demora cerca de cinco minutos a concluir todos os passos.
Para concluir este guia de início rápido, necessita de:
- Uma conta do Azure com uma subscrição ativa. Crie uma conta gratuitamente.
- Git
- PHP
- CLI do Azure para executar comandos em qualquer shell para criar e configurar recursos do Azure.
1 - Obter o repositório de exemplo
Você pode criar o aplicativo Web usando a CLI do Azure no Cloud Shell e usar o Git para implantar código PHP de exemplo no aplicativo Web.
Em uma janela de terminal, execute os seguintes comandos para clonar o aplicativo de exemplo para sua máquina local e navegue até a raiz do projeto.
git clone https://github.com/Azure-Samples/php-docs-hello-world cd php-docs-hello-world
Para executar o aplicativo localmente, use o
php
comando para iniciar o servidor web PHP integrado.php -S localhost:8080
Navegue até o aplicativo de exemplo em
http://localhost:8080
em um navegador da Web.Na janela do terminal, prima Ctrl+C para sair do servidor Web.
2 - Implante o código do aplicativo no Azure
A CLI do Azure tem um comando az webapp up
que cria os recursos necessários e implanta seu aplicativo em uma única etapa.
No terminal, implante o código em sua pasta local usando o az webapp up
comando:
az webapp up --runtime "PHP:8.2" --os-type=linux
- Se o
az
comando não for reconhecido, certifique-se de ter a CLI do Azure instalada. - O
--runtime "PHP:8.2"
argumento cria o aplicativo Web com PHP versão 8.2. - O
--os-type=linux
argumento cria o aplicativo Web no Serviço de Aplicativo no Linux. - Opcionalmente, você pode especificar um nome com o argumento
--name <app-name>
. Se você não fornecer um, um nome será gerado automaticamente. - Opcionalmente, você pode incluir o argumento
--location <location-name>
onde<location_name>
é uma região do Azure disponível. Você pode recuperar uma lista de regiões permitidas para sua conta do Azure executando oaz account list-locations
comando. - Se vir o erro "Não foi possível detetar automaticamente a pilha de tempo de execução da sua aplicação", certifique-se de que está a executar o comando no diretório de código (Consulte Resolução de problemas de deteção automática com az webapp up).
O comando pode demorar alguns minutos a ser executado. Enquanto está em execução, ele fornece mensagens sobre como criar o grupo de recursos, o plano do Serviço de Aplicativo e o recurso do aplicativo, configurar o registro em log e fazer a implantação do ZIP. Em seguida, ele fornece a mensagem "Você pode iniciar o aplicativo em http://< app-name.azurewebsites.net>", que é a URL do aplicativo no 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" }
Nota
O comando az webapp up
executa as seguintes ações:
Crie um grupo de recursos padrão.
Crie um plano padrão do Serviço de Aplicativo.
Crie um aplicativo com o nome especificado.
Zip implantar todos os arquivos do diretório de trabalho atual, com automação de compilação ativada.
Armazene os parâmetros em cache localmente no arquivo .azure/config para que você não precise especificá-los novamente ao implantar posteriormente com
az webapp up
ou outrosaz webapp
comandos da pasta do projeto. Os valores armazenados em cache são usados automaticamente por padrão.
Navegue até o aplicativo implantado em seu navegador da Web na URL http://<app-name>.azurewebsites.net
.
O código de exemplo PHP está sendo executado em um Serviço de Aplicativo do Azure.
Parabéns! Você implantou seu primeiro aplicativo PHP no Serviço de Aplicativo usando o portal do Azure.
3 - Atualizar e reimplantar o aplicativo
Utilizando um editor de texto local, abra o ficheiro
index.php
na aplicação PHP e faça uma pequena alteração ao texto na cadeia junto aecho
:echo "Hello Azure!";
Salve suas alterações e reimplante o aplicativo usando o comando az webapp up novamente com estes argumentos:
az webapp up --runtime "PHP:8.2" --os-type=linux
Quando a implantação estiver concluída, retorne à janela do navegador que foi aberta durante a etapa Procurar até o aplicativo e atualize a página.
4 - Gerencie seu novo aplicativo do Azure
Aceda ao portal do Azure para gerir a aplicação Web que criou. Pesquise e selecione Serviços de Aplicativo.
Selecione o nome do seu aplicativo do Azure.
A página Visão geral do seu aplicativo Web deve ser exibida. Aqui, você pode executar tarefas básicas de gerenciamento como Procurar, Parar, Reiniciar e Excluir.
O menu do aplicativo Web fornece diferentes opções para configurar seu aplicativo.
5 - Limpar recursos
Quando terminar o aplicativo de exemplo, você poderá remover todos os recursos do aplicativo do Azure. Ele ajuda você a evitar cobranças extras e mantém sua assinatura do Azure organizada. A remoção do grupo de recursos também remove todos os recursos do grupo de recursos e é a maneira mais rápida de remover todos os recursos do Azure para seu aplicativo.
Exclua o grupo de recursos usando o comando az group delete .
az group delete --name myResourceGroup
Este comando demora um minuto a ser executado.