Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Uyarı
Windows'ta PHP, Kasım 2022'de destek sonuna ulaştı. PHP yalnızca Linux üzerinde App Service için desteklenir. Bu makale yalnızca başvuru amaçlıdır.
Azure App Service, yüksek oranda ölçeklenebilen, kendi kendine düzeltme eki uygulayan bir web barındırma hizmeti sunar. Bu hızlı başlangıç öğreticisinde, bir PHP uygulamasının Windows'ta Azure App Service'e nasıl dağıtılacağı gösterilmektedir.
Cloud Shell'de Azure CLI'yi kullanarak web uygulamasını oluşturursunuz ve web uygulamasına örnek PHP kodu dağıtmak için Git'i kullanırsınız.
Bir Mac, Windows veya Linux makinesi kullanarak buradaki adımları takip edebilirsiniz. Önkoşullar yüklendikten sonra, adımların tamamlanması yaklaşık beş dakika sürer.
Azure hesabınız yoksa, başlamadan önce ücretsiz hesap oluşturun.
Önkoşullar
Bu hızlı başlangıcı tamamlamak için:
Örneği yerel olarak indirin
Bir terminal penceresinde aşağıdaki komutları çalıştırın. Örnek uygulamayı yerel makinenize kopyalar ve örnek kodu içeren dizine gider.
git clone https://github.com/Azure-Samples/php-docs-hello-world cd php-docs-hello-world
Varsayılan dalın olduğundan
main
emin olun.git branch -m main
Tavsiye
Dal adı değişikliği App Service tarafından gerekli değildir. Ancak, birçok depo varsayılan şubelerini
main
olarak değiştirdiğinden, bu hızlı başlangıç kılavuzu sizemain
'den bir deponun nasıl dağıtılacağını da gösteriyor.
Uygulamayı yerel olarak çalıştırma
Uygulamayı yerel olarak çalıştırın, böylece Azure'a dağıttığınızda nasıl görünmesi gerektiğini görebilirsiniz. Bir terminal penceresi açın ve yerleşik PHP web sunucusunu
php
başlatmak için komutu kullanın.php -S localhost:8080
Bir web tarayıcısı açın ve adresindeki
http://localhost:8080
örnek uygulamaya gidin.Sayfada görüntülenen örnek uygulamadan Merhaba Dünya! iletisini görürsünüz.
Terminal pencerenizde, web sunucusundan çıkmak için Ctrl+C tuşlarına basın.
Azure Cloud Shell
Azure, tarayıcınız aracılığıyla kullanabileceğiniz etkileşimli bir kabuk ortamı olan Azure Cloud Shell'i barındırıyor. Azure hizmetleriyle çalışmak için Cloud Shell ile Bash veya PowerShell kullanabilirsiniz. Yerel ortamınıza herhangi bir şey yüklemek zorunda kalmadan bu makaledeki kodu çalıştırmak için Cloud Shell önceden yüklenmiş komutlarını kullanabilirsiniz.
Azure Cloud Shell'i başlatmak için:
Seçenek | Örnek/Bağlantı |
---|---|
Kodun veya komut bloğunun sağ üst köşesindeki Deneyin'i seçin. Deneyin seçildiğinde kod veya komut otomatik olarak Cloud Shell'e kopyalanmaz. |
![]() |
https://shell.azure.comadresine gidin veya Cloud Shell'i tarayıcınızda açmak için Cloud Shell'i Başlat düğmesini seçin. | Azure Cloud Shell'i başlatmak için ![]() |
Azure portalının sağ üst kısmındaki menü çubuğunda Cloud Shell düğmesini seçin. |
![]() |
Azure Cloud Shell'i kullanmak için:
Cloud Shell'i başlatın.
Kodu veya komutu kopyalamak için kod bloğundaki (veya komut bloğundaki) Kopyala düğmesini seçin.
Kodu veya komutu Cloud Shell oturumuna yapıştırmak için Windows ve Linux'ta Ctrl+Shift+V seçeneğini veya macOS'ta Cmd+Shift+V seçeneğini kullanın.
Kodu veya komutu çalıştırmak için Enter'ı seçin.
Dağıtım kullanıcısını yapılandırın
FTP ve yerel Git, dağıtım kullanıcısını kullanarak azure web uygulamasına dağıtabilir. Dağıtım kullanıcınızı yapılandırdıktan sonra, bunu tüm Azure dağıtımlarınız için kullanabilirsiniz. Hesap düzeyinde dağıtım kullanıcı adınız ve parolanız Azure aboneliği kimlik bilgilerinizden farklıdır.
Dağıtım kullanıcısını yapılandırmak için Azure Cloud Shell'de az webapp deployment user set komutunu çalıştırın. Kullanıcı adını< ve >parolayı< dağıtım kullanıcı adı ve parolasıyla değiştirin>.
- Kullanıcı adı Azure içinde benzersiz olmalı ve yerel Git gönderimleri için '@' simgesini içermemelidir.
- Parola en az sekiz karakter uzunluğunda olmalı ve şu üç öğeden ikisi olmalıdır: harfler, sayılar ve simgeler.
az webapp deployment user set --user-name <username> --password <password>
JSON çıktısı parolayı şu şekilde null
gösterir: .
'Conflict'. Details: 409
hatası alırsanız kullanıcı adını değiştirin. Bir 'Bad Request'. Details: 400
hatası alırsanız, daha güçlü bir şifre kullanın.
Web uygulamalarınızı dağıtmak için kullanmak üzere kullanıcı adınızı ve parolanızı kaydedin.
Bir kaynak grubu oluşturun
Kaynak grubu, web uygulamaları, veritabanları ve depolama hesapları gibi Azure kaynaklarının dağıtıldığı ve yönetildiği mantıksal bir kapsayıcıdır. Örneğin, daha sonra tek bir basit adımda kaynak grubun tamamını silmeyi seçebilirsiniz.
Cloud Shell içinde az group create
komutuyla bir kaynak grubu oluşturun. Aşağıdaki örnek Batı Avrupa konumunda myResourceGroup adlı bir kaynak grubu oluşturur.
Ücretsiz katmanda App Service için desteklenen tüm konumları görüntülemek için az appservice list-locations --sku FREE
komutunu çalıştırın.
az group create --name myResourceGroup --location "West Europe"
Genellikle kaynak grubunuzu ve kaynakları kendinize yakın bir bölgede oluşturursunuz.
Komut tamamlandığında, bir JSON çıkışı size kaynak grubu özelliklerini gösterir.
Azure App Service planı oluşturma
Cloud Shell’de, az appservice plan create
komutuyla bir App Service planı oluşturun.
Aşağıdaki örnekte, myAppServicePlan
fiyatlandırma katmanı kullanılarak adlı bir App Service planı oluşturulmaktadır:
az appservice plan create --name myAppServicePlan --resource-group myResourceGroup --sku FREE --is-linux
App Service planı oluşturulduğunda Azure CLI, aşağıdaki örneğe benzer bilgiler gösterir:
{ "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 }
Web uygulaması oluştur
Cloud Shell'de
myAppServicePlan
App Service planında,az webapp create
komutunu kullanarak bir web uygulaması oluşturun.Aşağıdaki örnekte
<app-name>
kısmını genel olarak benzersiz bir uygulama adıyla değiştirin (geçerli karakterlera-z
,0-9
ve-
şeklindedir). Çalışma zamanı olarakPHP|7.4
ayarlanır. Desteklenen tüm çalışma zamanlarını görmek için komutunu çalıştırınaz webapp list-runtimes
.az webapp create --resource-group myResourceGroup --plan myAppServicePlan --name <app-name> --runtime 'PHP|8.1' --deployment-local-git
Web uygulaması oluşturulduğunda Azure CLI aşağıda yer alan çıktıdaki gibi bilgiler gösterir:
Local git is configured with url of <URL> { "availabilityState": "Normal", "clientAffinityEnabled": true, "clientCertEnabled": false, "cloningInfo": null, "containerSize": 0, "dailyMemoryTimeQuota": 0, "defaultHostName": "<app-name>.azurewebsites.net", "enabled": true, < JSON data removed for brevity. > }
Git dağıtımı etkinleştirilmiş boş bir yeni web uygulaması oluşturdunuz.
Uyarı
Git uzak deposunun URL'si
deploymentLocalGitUrl
özelliğinde gösterilir. Bu URL’ye daha sonra ihtiyacınız olacağı için URL’yi kaydedin.Yeni oluşturduğunuz web uygulamanıza göz atın.
Yeni web uygulamanızın nasıl görünmesi gerektiği aşağıda açıklanmıştır:
Git üzerinden Azure'a gönderme
Dalı dağıttığınızdan
main
App Service uygulamanızmain
için varsayılan dağıtım dalını olarak ayarlamanız gerekir (bkz . Dağıtım dalını değiştirme). Cloud Shell'de, komutuylaDEPLOYMENT_BRANCH
uygulama ayarını ayarlayınaz webapp config appsettings set
.az webapp config appsettings set --name <app-name> --resource-group myResourceGroup --settings DEPLOYMENT_BRANCH='main'
Yerel terminal penceresine geri dönün ve Azure uzaktaki bağlantıyı yerel Git deposuna ekleyin. deploymentLocalGitUrl-from-create-step değerini, Web uygulaması<ile değiştirin>.
git remote add azure <deploymentLocalGitUrl-from-create-step>
Aşağıdaki komutla uygulamanızı dağıtmak için Azure uzak deposuna gönderin. Git Kimlik Bilgileri Yöneticisi sizden kimlik bilgilerini istediğinizde, Azure portalında oturum açmak için kullandığınız kimlik bilgilerini değil Yerel git dağıtımını yapılandırma bölümünde oluşturduğunuz kimlik bilgilerini girdiğinizden emin olun.
git push azure main
Bu komutun çalıştırılması birkaç dakika sürebilir. Çalıştırıldığında, aşağıdaki örneğe benzer bilgiler görüntüler:
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 <URL> cc39b1e..25f1805 main -> main
Uygulamaya göz atın
Web tarayıcınızı kullanarak dağıtılan uygulamaya göz atın.
PHP örnek kodu bir Azure App Service web uygulamasında çalışıyor.
Tebrikler! İlk PHP uygulamanızı App Service'e dağıttınız.
Yerel olarak güncelleştirme ve kodu yeniden dağıtma
Yerel bir metin düzenleyici kullanarak, dosyayı PHP uygulamasında açın
index.php
ve yanındakiecho
dize içindeki metinde küçük bir değişiklik yapın:echo "Hello Azure!";
Yerel terminal penceresinde değişikliklerinizi Git'te uygulayın ve ardından kod değişikliklerini Azure'a gönderin.
git commit -am "updated output" git push azure main
Dağıtım tamamlandıktan sonra, Uygulamaya göz at adımı sırasında açılan tarayıcı penceresine dönün ve sayfayı yenileyin.
Yeni Azure uygulamanızı yönetme
Oluşturduğunuz web uygulamasını yönetmek için Azure portalına gidin. App Services'ı arayın ve seçin.
Azure uygulamanızın adını seçin.
Web uygulamanızın Genel Bakış sayfası görüntülenir. Burada Gözat, Durdur, YenidenBaşlat ve Sil gibi temel yönetim görevlerini gerçekleştirebilirsiniz.
Web uygulaması menüsü, uygulamanızı yapılandırmak için farklı seçenekler sunar.
Kaynakları temizle
Önceki adımlarda, bir kaynak grubunda Azure kaynakları oluşturdunuz. Bu kaynakların gelecekte gerekli olacağını düşünmüyorsanız, Cloud Shell’de aşağıdaki komutu çalıştırarak kaynak grubunu silin:
az group delete --name myResourceGroup
Bu komutun çalıştırılması bir dakika sürebilir.
Azure App Service, web barındırma için, yüksek düzeyde ölçeklenebilir ve kendi kendini güncelleyen bir hizmet sağlar. Bu hızlı başlangıçta, bir PHP uygulamasının Linux'ta Azure App Service'e nasıl dağıtılacağı gösterilmektedir.
Bir Mac, Windows veya Linux makinesi kullanarak buradaki adımları takip edebilirsiniz. Önkoşullar yüklendikten sonra, adımların tamamlanması yaklaşık on dakika sürer.
Önkoşullar
- Aktif bir aboneliğe sahip bir Azure hesabı. Ücretsiz hesap oluşturun.
- Aptal
- PHP
- Azure CLI, Azure kaynaklarını oluşturmak ve yapılandırmak amacıyla, herhangi bir kabukta komutları çalıştırmak için kullanılabilir.
Örnek depoyu indirin
Aşağıdaki adımlarda, Azure CLI kullanarak web uygulamasını oluşturacak ve ardından web uygulamasına örnek PHP kodu dağıtacaksınız.
Azure Cloud Shell'i kullanabilirsiniz.
Bir terminal penceresinde, örnek uygulamayı yerel makinenize kopyalamak ve proje köküne gitmek için aşağıdaki komutları çalıştırın.
git clone https://github.com/Azure-Samples/php-docs-hello-world cd php-docs-hello-world
Uygulamayı yerel olarak çalıştırmak için, yerleşik PHP web sunucusunu başlatmak için komutu kullanın
php
.php -S localhost:8080
Web tarayıcısında
http://localhost:8080
konumundaki örnek uygulamayı görüntüleyin.Terminal pencerenizde, web sunucusundan çıkmak için Ctrl+C tuşlarına basın.
Uygulama kodunuzu Azure'a dağıtma
Azure CLI, gerekli kaynakları oluşturan ve uygulamanızı tek bir adımda dağıtan bir komuta az webapp up
sahiptir.
Terminalde, şu komutu kullanarak kodu yerel klasörünüze dağıtın az webapp up
:
az webapp up --runtime "PHP:8.2" --os-type=linux
- Komut tanınmıyorsa
az
yüklü olduğundan emin olun. -
--runtime "PHP:8.2"
parametresi, web uygulamasını PHP sürüm 8.2 ile oluşturur. - "
--os-type=linux
argümanı, Linux üzerinde App Service'te web uygulamasını oluşturur." - İsteğe bağlı olarak
--name <app-name>
argüman olarak bir ad belirtebilirsiniz. Bir ad sağlamazsanız otomatik olarak bir ad oluşturulur. - İsteğe bağlı olarak,
--location <location-name>
parametresini dahil edebilirsiniz ve burada<location_name>
mevcut bir Azure bölgesidir. Azure hesabınız için izin verilen bölgelerin listesiniaz account list-locations
komutunu çalıştırarak alabilirsiniz. - Uygulamanızın çalışma zamanı yığını otomatik olarak algılanamadı hatasını görürseniz, komutu kod dizininde çalıştırdığınızdan emin olun. Daha fazla bilgi edinmek için bkz: az webapp up ile ilgili otomatik algılama sorunlarını giderme.
Komutun tamamlanması birkaç dakika sürebilir. Çalışırken, kaynak grubunu, App Service planını ve uygulama kaynağını oluşturma, günlüğe kaydetmeyi yapılandırma ve ZIP ile dağıtım yapma hakkında iletiler sağlar. Daha sonra Azure'da uygulamanın URL'sini sağlar.
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 <directory-location> ...
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": "<directory-path>"
}
Uyarı
az webapp up
komutu şu eylemleri gerçekleştirir:
Varsayılan bir kaynak grubu oluşturun.
Varsayılan bir App Service planı oluşturun.
Bir uygulama oluşturun belirtilen adla.
Geçerli çalışma dizinindeki tüm dosyaları, derleme otomasyonu etkinleştirilmiş olarak, Zip ile dağıtın.
Parametreleri yerel olarak .azure/config dosyasında önbelleğe alın, böylece proje klasöründen
az webapp up
veya diğeraz webapp
komutlarıyla daha sonra dağıtırken bunları tekrar belirtmenize gerek kalmaz. Önbelleğe alınan değerler varsayılan olarak otomatik olarak kullanılır.
Terminalde sağlanan URL'de web tarayıcınızda dağıtılan uygulamaya göz atın.
PHP örnek kodu bir Azure App Service'de çalışıyor.
Tebrikler! Azure portal kullanarak ilk PHP uygulamanızı App Service'e dağıttınız.
Uygulamayı güncelleştirme ve yeniden dağıtma
php-docs-hello-world dizinini bulun ve yerel bir metin düzenleyici kullanarak index.php dosyasını açın. öğesinin
echo
yanındaki dizenin içindeki metinde küçük bir değişiklik yapın:echo "Hello Azure!";
Değişikliklerinizi kaydedin ve ardından az webapp up komutunu kullanarak uygulamayı şu bağımsız değişkenlerle yeniden dağıtın:
az webapp up --runtime "PHP:8.2" --os-type=linux
Dağıtım tamamlandıktan sonra, Uygulamaya göz at adımı sırasında açılan tarayıcı penceresine dönün ve sayfayı yenileyin.
Yeni Azure uygulamanızı yönetme
Oluşturduğunuz web uygulamasını yönetmek için Azure portalına gidin. App Services'ı arayın ve seçin.
Açmak için Azure uygulamanızı seçin.
Web uygulamanızın Genel Bakış sayfası görüntülenmelidir. Burada Gözat, Durdur, YenidenBaşlat ve Sil gibi temel yönetim görevlerini gerçekleştirebilirsiniz.
Web uygulaması menüsü, uygulamanızı yapılandırmak için farklı seçenekler sunar.
Kaynakları temizle
Örnek uygulamayla işiniz bittiğinde, ek ücretlerden kaçınmak ve Azure aboneliğinizi düzenli tutmak için uygulamanın tüm kaynaklarını Azure'dan kaldırabilirsiniz. Kaynak grubunu kaldırmak, kaynak grubundaki tüm kaynakları da kaldırır ve uygulamanız için tüm Azure kaynaklarını kaldırmanın en hızlı yoludur.
az group delete komutunu kullanarak kaynak grubunu silin .
az group delete --name myResourceGroup
Bu komutun çalıştırılması bir dakika sürer.