IIS'ASP.NET Core uygulama yayımlama
Bu öğreticide, iis sunucusunda ASP.NET Core uygulamanın nasıl barındır olduğu açıklanır.
Bu öğretici aşağıdaki konuları kapsar:
- .NET Core Barındırma Paketi'Windows yükleyin.
- IIS Yöneticisi'nde bir IIS sitesi oluşturun.
- Bir ASP.NET Core dağıtın.
Önkoşullar
- .NET Core SDK makineye yüklenir.
- Windows Web Sunucusu (IIS) sunucu rolüyle yapılandırılmış sunucu. Sunucunuz IIS ile web sitelerini barındırlayacak şekilde yapılandırılmamışsa, makalenin IIS yapılandırması bölümündeki yönergeleri izleyin ve ardından IIS ASP.NET Core Windows konak konakları bu öğreticiye geri gidin.
Uyarı
IIS yapılandırması ve web sitesi güvenliği, bu öğreticide ele alınan kavramları içerir. Üretim uygulamalarını IIS'de barındırmadan önce, Microsoft IIS belgelerinde IIS kılavuzuna ve IIS ile barındırma hakkında ASP.NET Core makalesine bakın.
Bu öğretici kapsamında yer alan IIS barındırma için önemli senaryolar şunlardır:
- ASP.NET Core Data Protection için kayıt defteri kovanı oluşturma
- Uygulama havuzunun Access Control Listesinin (ACL) yapılandırması
- Iis dağıtım kavramlarına odaklanmak için bu öğretici, IIS'de yapılandırılmış HTTPS güvenliği olmayan bir uygulama dağıtır. HTTPS protokolü için etkinleştirilmiş bir uygulamayı barındırma hakkında daha fazla bilgi için bu makalenin Ek kaynaklar bölümündeki güvenlik konularına bakın. Uygulamalarınızı barındırmaya ASP.NET Core kılavuzluk makalesinde IIS ASP.NET Core Windows konak konakları verilmektedir.
.NET Core Barındırma Paketi'ne yükleme
IIS sunucusuna .NET Core Barındırma Paketi'ni yükleyin. Paket .NET Core Çalışma Zamanı, .NET Core Kitaplığı ve ASP.NET Core Modülünü yüklüdür. Modül, uygulama ASP.NET Core IIS'nin arkasında çalışmasına olanak sağlar.
Aşağıdaki bağlantıyı kullanarak yükleyiciyi indirin:
Geçerli .NET Core Barındırma Paketi yükleyicisi (doğrudan indirme)
Yükleyiciyi IIS sunucusunda çalıştırın.
Sunucuyu yeniden başlatın veya
net stop was /yardından komutnet start w3svckabuğunda komutunu yürütün.
IIS sitesini oluşturma
IIS sunucusunda, uygulamanın yayımlanan klasör ve dosyalarını içeren bir klasör oluşturun. Aşağıdaki bir adımda, klasörün yolu uygulamanın fiziksel yolu olarak IIS'ye sağlanır. Bir uygulamanın dağıtım klasörü ve dosya düzeni hakkında daha fazla bilgi için bkz. ASP.NET Core dizin yapısı .
IIS Yöneticisi'nde, Bağlantılar panelinde sunucunun düğümünü açın. Siteler klasörüne sağ tıklayın. Bağlam menüsünden Web Sitesi Ekle'yi seçin.
Bir Site adı girin ve Fiziksel yolu, oluşturduğunuz uygulamanın dağıtım klasörüne ayarlayın. Bağlama yapılandırmasını sağlama ve Tamam'ı seçerek web sitesini oluşturma.
Uyarı
Üst düzey joker karakter bağlamaları (
http://*:80/http://+:80ve ) kullanılmamalı. Üst düzey joker karakter bağlamaları, güvenlik açıklarına karşı uygulamanıza açabilirsiniz. Bu hem güçlü hem de zayıf joker karakterler için geçerlidir. Joker karakter yerine açık konak adları kullanın. Alt etki alanı joker karakter bağlaması (örneğin, ) üst etki alanının tamamını (güvenlik açığı olan yerine) denetim altına alırsanız bu güvenlik riski*.mysub.com*.comyoktur. Daha fazla bilgi için bkz. rfc7230 section-5.4.İşlem modeli kimliğinin uygun izinlere sahip olduğunu onaylayın.
Uygulama havuzunun varsayılan kimliği ( İşlem Modeli ) başka bir kimliğe değiştirilirse, yeni kimliğin uygulamanın klasörüne, veritabanına ve diğer gerekli kaynaklara erişmek için gerekli izinlere sahip > Identity olduğunu
ApplicationPoolIdentitydoğrulayın. Örneğin, uygulama havuzu, uygulamanın dosyaları okuduğu ve yazdığı klasörlere okuma ve yazma erişimi gerektirir.
ASP.NET Core Razor Pages uygulaması oluşturma
Sayfalar ASP.NET Core kullanmaya başlayın uygulaması oluşturmak için Razor öğreticiyi izleyin.
Uygulamayı yayımlama ve dağıtma
Uygulama yayımlamak, sunucu tarafından barındırılana derlenmiş bir uygulama üretmek anlamına gelir. Uygulama dağıtma, yayımlanan uygulamayı barındırma sistemine taşımak anlamına gelir. Yayımlama adımı, .NET Core SDK tarafından, dağıtım adımı ise çeşitli yaklaşımlar tarafından iş olabilir. Bu öğretici, aşağıdakiler için klasör dağıtım yaklaşımını benimser:
- Uygulama bir klasörde yayımlanır.
- Klasörün içeriği IIS sitesi klasörüne (IIS Yöneticisi'nde sitenin Fiziksel yolu) taşınır.
- Çözüm Gezgini’nde projeye sağ tıklayın ve Yayımla’yı seçin.
- Yayımlama hedefi seçin iletişim kutusunda Klasör yayımlama seçeneğini belirleyin.
- Klasör veya Dosya Paylaşımı yolunu ayarlayın.
- Geliştirme makinesi üzerinde ağ paylaşımı olarak kullanılabilen IIS sitesi için bir klasör oluşturduysanız, paylaşımın yolunu sağlar. Geçerli kullanıcının paylaşımda yayımlamak için yazma erişimine sahip olması gerekir.
- IIS sunucusunda doğrudan IIS site klasörüne dağıtamıyorsanız, çıkarılabilir medyada bir klasöre yayımlayın ve yayımlanan uygulamayı, iis yöneticisinde sitenin Fiziksel yolu olan sunucu üzerinde IIS site klasörüne fiziksel olarak taşıyın. Klasörün içeriğini, sitenin IIS Yöneticisi'nde fiziksel yolu olan sunucu
bin/Release/{TARGET FRAMEWORK}/publishüzerinde IIS site klasörüne taşıma.
- Yayımla düğmesini seçin.
Web sitesine göz atma
İlk isteği alan uygulamaya tarayıcıdan erişilebilir. Site için IIS Yöneticisi'nde kurduğunız uç nokta bağlaması üzerinden uygulamaya bir istekte bulunabilirsiniz.
Sonraki adımlar
Bu öğreticide, şunların nasıl yapıldığını öğrendiniz:
- .NET Core Barındırma Paketi'Windows yükleyin.
- IIS Yöneticisi'nde bir IIS sitesi oluşturun.
- Bir ASP.NET Core dağıtın.
IIS'de uygulama barındırma ASP.NET Core daha fazla bilgi edinmek için IIS'ye Genel Bakış makalesine bakın:
Ek kaynaklar
ASP.NET Core belge kümesinde makaleler
- ASP.NET Core Modülü
- ASP.NET Core dizin yapısı
- Azure App Service IIS ASP.NET Core de ASP.NET Core sorunlarını giderme
- ASP.NET Core 'de HTTPS 'yi zorla
Uygulama dağıtımıyla ASP.NET Core makaleler
- Visual Studio ile Azure 'da ASP.NET Core uygulaması yayımlama
- Visual Studio Code ile Azure 'da ASP.NET Core uygulaması yayımlama
- Visual Studio dağıtımı için yayımlama profillerini (.pubxml) ASP.NET Core yayımlama
- Web uygulamasını bir klasöre yayımlamak için Mac için Visual Studio
IIS HTTPS yapılandırmasıyla ilgili makaleler
IIS ve Windows Server makaleleri
IIS yöneticileri için dağıtım kaynakları
- IIS belgeleri
- Başlarken IIS Yöneticisi ile birlikte kullanın
- .NET Core uygulama dağıtımı
- ASP.NET Core Modülü
- ASP.NET Core dizin yapısı
- ASP.NET Core ile IIS modülleri
- Azure App Service IIS ASP.NET Core de ASP.NET Core sorunlarını giderme
- ASP.NET Core ile Azure App Service ve IIS için ortak hatalar başvurusu