URL'leri doğru yönlendirme için yeniden yazın
Blazor WebAssembly uygulamasındaki sayfa bileşenleri için yönlendirme istekleri, barındırılan bir Blazor Sunucusundaki yönlendirme istekleri kadar basit değildir. İki bileşenli bir Blazor WebAssembly uygulamasını düşünün:
- Main.razor - Uygulamanın kök dizinine yüklenir ve
About
bileşene ( href="About"
) bir bağlantı içerir .
- About.razor -
About
bileşen.
Uygulamanın varsayılan belgesi, tarayıcının adres çubuğu kullanılarak istendiğinde (örneğin, https://www.contoso.com/
):
- Tarayıcı bir istekte bulunuyor.
- Genellikle index.html olan varsayılan sayfa döndürülür .
- index.html uygulamayı başlatır.
- Blazor'un yönlendiricisi yüklenir ve Razor
Main
bileşeni oluşturulur.
Ana sayfasında, istemci üzerinde Hakkında bileşen çalışmalara bağlantısını seçerek Blazor yönlendirici için internette bir istekte tarayıcının durur çünkü www.contoso.com
için About
ve oluşturulan hizmet veren About
bileşeni kendisi. Blazor WebAssembly uygulamasındaki tüm iç uç nokta istekleri aynı şekilde çalışır: İstekler, Internet'teki sunucu tarafından barındırılan kaynaklara tarayıcı tabanlı istekleri tetiklemez. Yönlendirici istekleri dahili olarak ele alır.
Tarayıcının adres çubuğu kullanılarak bir istek yapılırsa www.contoso.com/About
istek başarısız olur. Uygulamanın Internet ana bilgisayarında böyle bir kaynak yoktur, bu nedenle 404 - Bulunamadı yanıtı döndürülür.
Tarayıcılar, istemci tarafı sayfaları için Internet tabanlı ana bilgisayarlara istekte bulunduğundan, web sunucuları ve barındırma hizmetleri, sunucuda fiziksel olarak bulunmayan tüm kaynak isteklerini index.html sayfasına yeniden yazmalıdır . Ne zaman index.html döndürülür, uygulamanın Blazor yönlendirici üstlenir ve doğru kaynağı ile yanıt verir.
Bir IIS sunucusuna dağıtım yaparken, URL Yeniden Yazma Modülünü uygulamanın yayınlanan web.config dosyasıyla kullanabilirsiniz. Daha fazla bilgi için IIS bölümüne bakın.
Belki de IIS yöneticisi-> sunucu düğümü-> uygulama isteği yönlendirme önbelleği-> proxy-> etkinleştirmesinde ileri proxy'yi etkinleştirmeyi deneyebilirsiniz.
Yalnızca bir web siteniz varsa, web sitesini ARR sunucu grubuna ekleyebilir ve ardından otomatik olarak yönlendirme kuralını oluşturacaktır. Arka uç sunucusunu sağlık kontrolü ile izlemek uygun olacaktır.