Derlemeler ve dağıtımlar
Hangi ön uç çerçeveleri Statik Web Apps tarafından otomatik olarak oluşturulabilir?
Statik Web Apps otomatik olarak derlenebilir:
- React, Vue.js, Angular, Blazor WebAssembly gibi popüler tek sayfalı uygulamalar (SPA)
- Yaygın olarak kullanılan statik site oluşturucuları: Next.js, Nuxt.js, Gatsby, Hugo, Jekyll, Eleventy
Daha fazla bilgi edinmek için bkz . Ön uç çerçevelerini yapılandırma.
Derleme işlemi sırasında ne olur?
Azure Static Web Apps derleme altyapısı, uygulamanızın ön ucu ve API'sini oluşturan Oryx tarafından desteklenir.
Uygulamanız oluşturulduğunda, Oryx derleme adımlarını algılar ve bunları otomatik olarak yürütür. Örneğin uygulamanız Node.js kullanıyorsa npm veya Yarn kullanarak paketleri yükler. Ardından uygulamanızın buildbuild:azure dosyasında sağlanan veya betiğini çalıştırır.
Derleme işlemini özelleştirebilir miyim?
Uygulamanızı derleme konusunda tam denetime sahip olmak istiyorsanız, uygulamanızın GitHub iş akışında veya Azure DevOps işlem hattında kendi derleme adımlarınızı yapılandırabilirsiniz. Ardından uygulamanızı dağıtmak için Static Web Apps GitHub Actions veya Azure Pipelines görevini kullanabilirsiniz. olarak ayarlandığından skip_app_buildtrueemin olun. Daha fazla bilgi edinmek için bkz . Derleme yapılandırması.
skip_app_build Komutu yalnızca ön uç uygulamaları için desteklenir. API uygulamasının Azure Static Web Apps GitHub Actions veya Azure Pipelines görevi tarafından derlenmiş olması gerekir.
React uygulamam "process.env.CI = true olduğundan uyarıları hata olarak ele alma" iletisiyle derlenemiyor. Bu hata Nasıl yaparım? düzeltilir?
Uygulamanız create-react-app kullanıyorsa, derleme komutu GitHub Actions veya Azure Pipelines gibi sürekli tümleştirme (CI) ortamında çalışırken uyarıları hata olarak değerlendirir. Uygulamanızda uyarılar varsa, bu uyarı oluşturulamıyor. Bu sorunları düzeltmek için uygulamanızı uyarıları kaldıracak şekilde değiştirin. Uyarılar olsa bile derlemenin başarılı olmasını istiyorsanız, ortam değişkenini ayarlamak için package.json'de derleme betiğinizi güncelleştirinCI:
"scripts": {
"build": "CI= react-scripts build"
}
GitHub'da dalını değiştirmek Nasıl yaparım??
Derlenip dağıtılacak dalı değiştirmek için uygulamanızın GitHub iş akışındaki dal adlarını güncelleştirin. Örneğin, uygulamanızı adlı releasebir daldan derleyip dağıtacak şekilde değiştirmek istiyorsanız iş akışınızın bölümünü güncelleştirin on :
on:
push:
branches:
- release
pull_request:
types: [opened, synchronize, reopened, closed]
branches:
- release
Önizleme döneminde oluşturulan statik web uygulamaları için dağıtım belirtecini sıfırlamanız gerekebilir.
Linux GitHub Actions veya Azure Pipelines derleme aracısı üzerinde Statik Web Uygulamaları eylemini/görevini çalıştırmam gerekiyor mu?
Azure Static Web Apps derleme altyapısı bir Linux Docker kapsayıcısında çalıştığından yalnızca Linux derleme aracısında çalıştırılabilir.
Git Büyük Dosya Depolama (LFS) kullanan bir uygulamayı Nasıl yaparım? dağıtın?
GitHub iş akışınızda, EYLEMI LFS'yi etkinleştirmek için yapılandırın actions/checkout :
- uses: actions/checkout@v2
with:
submodules: true
lfs: true
Dağıtımdan sonra önbelleği el ile temizlemem veya geçersiz kılmam gerekiyor mu?
Azure Static Web Apps önbellek geçersizliğini otomatik olarak işler. Dağıtım tamamlandığında tüm isteklere dosyalarınızın en son sürümü sunulur. Ancak, yapılandırdıysanız dosyalar yine de kullanıcılarınızın tarayıcılarında veya CDN'de önbelleğe alınabilir. Tarayıcıların ve CDN'lerin içeriğinizi önbelleğe alma şeklini denetlemek için uygulamanızın yapılandırma dosyasında uygun üst bilgileri yapılandırın.
Azure Pipelines ile dağıtım yaptığımda üretim öncesi ortamları kullanabilir miyim?
Üretim öncesi ortamlar şu anda yalnızca GitHub Actions için desteklenmektedir.
Barındırma
Statik Web Apps özel etki alanlarını ve TLS sertifikalarını destekliyor mu?
Uygulamanızı, apex etki alanları da dahil olmak üzere özel etki alanlarını kullanacak şekilde yapılandırabilirsiniz. Statik Web Apps, özel bir etki alanı eklediğinizde otomatik olarak ücretsiz bir TLS sertifikası sağlar. Daha fazla bilgi edinmek için bkz . Ücretsiz sertifikayla özel etki alanı ayarlama.
Uygulamamın 404 hata sayfasını özelleştirebilir miyim?
Yapılandırma dosyasının responseOverridesbölümünü kullanarak özel hata sayfalarını yapılandırabilirsiniz.
Uygulamamın belirli bir Azure bölgesine dağıtıldığından emin Nasıl yaparım??
Azure Static Web Apps genel bir hizmettir. Uygulamanızın statik varlıkları genel olarak dağıtılır. Uygulamanızı oluşturduğunuzda, yönetilen Azure İşlevleri uygulamasının dağıtıldığı bir bölge seçersiniz. İşlevler uygulamanıza yönetilen işlevleri desteklemeyen bir bölgede ihtiyacınız varsa, ayrı olarak dağıttığınız İşlevler uygulamasıyla Kendi İşlevlerinizi getirin uygulamasını kullanabilirsiniz.
statik web uygulamamı Azure Uygulaması lication Gateway'in arkasında veya Azure Front Door gibi bir CDN'nin arkasında Nasıl yaparım? yapılandırın?
Azure Static Web Apps, uygulamanızın statik varlıklarının genel dağıtımını içerir. Genel ayak izinizi en üst düzeye çıkarmak istiyorsanız veya gelişmiş özelliklere ihtiyacınız varsa, ayrılmış bir içerik dağıtım ağı (CDN) veya Azure Uygulaması lication Gateway ekleyebilirsiniz.
Trafiği belirli bir CDN'ye kısıtlamak için CDN'nizi her isteğe önceden tanımlanmış, gizli dizi değeri içeren bir üst bilgi ekleyecek şekilde yapılandırın ve Statik Web Apps'i üst bilgiyi gerektirecek şekilde yapılandırın. trafiği bir Azure Uygulaması Lication Gateway'e kısıtlamak için uygulamanızı yalnızca Application Gateway'inizin IP'sinden gelen trafiğe izin verecek şekilde yapılandırın.
Ayrıca uygulamanızı CDN veya Application Gateway ana bilgisayar adlarının iletilmesine izin verecek şekilde yapılandırın.
Azure Front Door'un yapılandırılması hakkında bilgi edinmek için bu öğreticiye bakın.
Gzip veya Brotli sıkıştırmasını etkinleştirmek Nasıl yaparım??
, ve gibi .htmlpopüler metin biçimlerinin dosya uzantılarına sahip varlıklar için Azure Static Web Apps, istemci destekliyorsa statik varlıklarınızın Gzip.css. .js
Diğer dosya türleri için, Static Web Apps uzantılı dosyanızın Brotli ile sıkıştırılmış bir .br sürümünü eklemenize olanak tanır. Örneğin, adlı app.wasmsıkıştırılmamış bir dosyanız varsa, uygulamanıza adlı app.wasm.br sıkıştırılmış bir sürüm ekleyebilirsiniz. Bu sürüm, Brotli isteklerini app.wasmdestekleyen bir istemci tarafından isteniyorsa otomatik olarak sunulur.
Statik web uygulamam var olan bir yola eriştiğimde neden 404 hatası döndürmektedir?
React, Angular veya Blazor WebAssembly gibi çoğu ön uç çerçevesi, gezintiyi işlemek için istemci tarafı yönlendirme kullanır. İstemci tarafı yolları yalnızca tarayıcıda çalışan uygulama tarafından bilinir. Statik Web Apps'ten istemci tarafı bir yol isterseniz, yol uygulamanızın dağıtılan varlıklarında bulunmadığından 404 hatası döndürür. Bu sorunu çözmek için uygulamanızın yapılandırma dosyasına bir geri dönüş yolu ekleyin.
Yapılandırma
Uygulamam için ortam değişkenlerini Nasıl yaparım? yapılandırdım?
Uygulamanız için ayarlayabileceğiniz farklı ortam değişkeni türleri vardır. Uygulamanızın derleme yapılandırmasında uygulamanızın ön uç derleme işlemini etkileyen değişkenleri yapılandırın. Uygulamanızın API'si tarafından kullanılan değişkenleri yapılandırmak için uygulama ayarlarını kullanın. Daha fazla bilgi edinmek için bkz . Yapılandırmaya genel bakış.
Statik Web Apps yönetilen kimliği destekliyor mu?
Statik Web Apps yönetilen kimliği destekler, ancak yalnızca Key Vault'tan kimlik doğrulama gizli dizilerini almak için kullanılır.
API'nizde yönetilen kimliğe veya Key Vault başvurularına ihtiyacınız varsa, yönetilen kimlik kullanan ayrı bir İşlevler uygulamasını kullanmak için Kendi İşlevlerinizi getirin uygulamasını kullanın.
Kimlik Doğrulaması
Statik web uygulamamda kaç kullanıcı oturum açabilir?
Statik Web Apps'te uygulamanızda oturum açabilecek kullanıcı sayısı sınırı yoktur. Yerleşik davetler sistemini kullanarak en fazla 25 kullanıcıya özel roller atayabilirsiniz. Daha fazla kullanıcıya özel roller atamanız gerekiyorsa, program aracılığıyla rol atamak için bir API işlevi kullanabilirsiniz.
Kimlik sağlayıcısından kullanıcının erişim belirtecini veya taleplerini alma Nasıl yaparım??
Rol yönetimi için bir API işlevi kullandığınızda kullanıcının erişim belirtecini ve taleplerini alabilirsiniz.
Tek bir kimlik sağlayıcısı kullanmakla sınırlı mıyım?
Statik Web Apps yerleşik kimlik doğrulamasını kullanırken, kullanıcılar desteklenen kimlik sağlayıcılarından herhangi biriyle oturum açabilir. Kullanıcıların belirli bir kimlik sağlayıcısıyla oturum açmasını engellemek istiyorsanız, bunu engelleyebilirsiniz.
Özel kimlik doğrulaması kullanıyorsanız, bir veya daha fazla kimlik sağlayıcısı yapılandırabilirsiniz.
API işlevleri
API'lerimi Static Web Apps'in desteklemediği bir dil veya dil sürümünü kullanarak Nasıl yaparım? yazabilirsiniz?
Static Web Apps yönetilen işlev uygulamaları, Azure İşlevleri tarafından desteklenen tüm dilleri veya dil sürümlerini desteklemez. Ayrı bir İşlevler uygulamasını Statik Web Uygulamanıza bağlamak için Kendi İşlevlerinizi getirin uygulamasını kullanabilirsiniz.
HTTP dışındaki olaylara yanıt veren sunucusuz işlevler Nasıl yaparım??
Static Web Apps'teki yönetilen işlev uygulamaları API senaryoları için iyileştirilmiştir ve yalnızca HTTP tetikleyicilerini destekler. Cron işleri veya durum bilgisi olan iş akışları için Dayanıklı İşlevler gibi Azure İşlevleri tarafından desteklenen diğer tetikleyici türlerini kullanmanız gerekiyorsa, Statik Web Uygulamanıza ayrı bir İşlevler uygulaması bağlamak için Kendi İşlevlerinizi Getir uygulamasını kullanabilirsiniz.
Genel
Ücretsiz planın sınırlamaları nelerdir?
Ücretsiz plan genel dağıtım, özel etki alanları, ücretsiz TLS sertifikaları, yönetilen API işlevleri ve daha fazlası gibi Standart planla aynı özelliklerin birçoğuna sahiptir. Ancak daha fazla bant genişliğine, hizmet düzeyi sözleşmesine (SLA) veya gelişmiş özelliklere ihtiyacınız varsa Standart planı göz önünde bulundurmanız gerekir. Daha fazla bilgi edinmek için bkz . Barındırma planları ve Kotalar.
Uygulamamı oluşturduktan sonra barındırma planını değiştirebilir miyim?
İstediğiniz zaman Ücretsiz planından Standart plana yükseltebilirsiniz. Standart planı gerektiren özellikler kullanmıyorsanız Standart plandan Ücretsiz plana da düşürebilirsiniz.
Statik web uygulamamı dağıtmadan yerel olarak geliştirebilir miyim?
Çoğu ön uç çerçevesi uygulamanızı yerel olarak çalıştırmak için bir geliştirme sunucusu sağlar. Ancak, kimlik doğrulaması veya API işlevlerini kullanmak istiyorsanız uygulamanızı Azure'a dağıtmadan tüm özelliklerini test etmek zor olabilir. Uygulamanızı yerel olarak çalıştırmak için, kimlik doğrulaması dahil olmak üzere bulut deneyimini öykünen ve API işlevlerinizi çalıştırmak için Azure İşlevleri Core Tools ile tümleşen Static Web Apps komut satırı arabirimini (CLI) kullanabilirsiniz. Uygulamanızı Azure'a dağıtmak için kullanabileceğiniz bir Statik Web Apps Visual Studio Code uzantısı da vardır.
Nasıl yardım alabilir veya yeni bir özellik önerebilirim?
Yardıma ihtiyacınız varsa veya bir öneriniz varsa, Static Web Apps GitHub deposunda bir sorun oluşturabilirsiniz.
Bir sorunla ilgili anında yardım almak için Azure desteği ile iletişime geçin.