ASP.NET Core programlarını Internet'teki IIS Web sunucularında uzaktan yayımlama

Sayfa oluşturma tarihi :

çevre

Windows Server
  • Windows Server 2019
Internet Information Services (IIS)
  • 10.0
ASP.NET Çekirdek
  • 5.0
Web Dağıtımı
  • 3.6 Japonca sürüm

İlk başta

ASP.NET Core programlarını doğrudan Visual Studio'dan Windows Server'da ayarladığınız Internet Information Services'a (IIS) nasıl yükleyebileceğinizi öğrenin.

Windows Server'da ilk kez çalışmanız gerektiğinde, ayarladıktan sonra, ikinci kez ve daha sonra doğrudan Visual Studio'dan yayımlayabilirsiniz.

Bu İpuçları programları Internet'teki sunucularda yayımlar, ancak güvenlik önlemleri en az düzeydedir, bu nedenle endişeleniyorsanız, ek önlemler almanızı veya başka bir karşıya yükleme yöntemi almanızı öneririz.

önkoşul

  • Windows Server kurulumu
  • Zaten yüklemek için bir ASP.NET Core programınız var
  • Sunuculara Internet veya intranet üzerinden bağlanma

prosedür

Internet Information Services'ı (IIS) ayarlama

Adımlar aşağıdaki sayfada özetlenmiştir. IIS, ASP.NET Core programlarını çalıştırmak dışında da kullanılabilir.

Bu arada, iIS kurulumunda ek ayarlar gereklidir, ancak yukarıda bağlantılı ipuçlarında ayarlanmıyor. Daha sonra hazırlayabilirsin, bunu sonra konuşuruz.

IIS'de yönetim hizmetleri ekleme

Varsayılan IIS kurulumu bir "yönetilen hizmet" ayarlamadığı için ekleyin.

Sunucu Yöneticisi'ne başlayın.

Menüyü yönetmek için Rol ve Özellik Ekle'yi seçin.

İstenilen ekrana birkaç kez "İleri" düğmesine basın.

"Sunucu Rolünü Seç" ekranına geldiğinizde, "Web Sunucusu (IIS)" ve "Yönetim Araçları"nı genişletin ve "Yönetim Hizmetleri"ni denetleyin. (Rakam İngilizcedir, ancak aynıdır.)

ASP.NET 4.7 yüklü değilse, aşağıdaki iletişim kutusu görüntülenir, bu nedenle birlikte ekleyin.

Bundan sonra, lütfen "İleri" düğmesine olduğu gibi tıklayın ve yükleyin.

IIS Yöneticisi'yi açtığınızda, yönetim hizmetlerinin eklendiğini doğrulayabilirsiniz.

Güvenlik duvarı ayrıca bağlantı noktalarının dağıtıma otomatik olarak izin verir.

ASP.NET Core Hosting Paketini yükleme

Windows Server'da ASP.NET Core çalıştırmak için gereklidir. Yüklendikten sonra, IIS'de geleneksel bir ASP.NET uygulaması gibi çalışabilir.

Aşağıdaki sayfalara gidin: Bu arada, bu İpuçları 5.0 kullanır, bu nedenle farklı bir sürüm kullanıyorsanız, ilgili sayfaya gidin.

Ekranın sağ alt kısmında çalışma zamanında Windows için bir Hosting Paketi vardır, bu nedenle indirmek için bağlantıyı tıklayın.

Karşıdan yüklenen yükleyiciyi Windows Server'da çalıştırın.

"Lisans koşullarını ve kullanım koşullarını kabul ediyorum" ı kontrol edin ve yükle düğmesine tıklayın.

Yükleme tamamlandığında kapatın.

Web Dağıtımını Yükleme

Visual Studio'dan yayımlama programı almak için gereklidir.

Aşağıdaki bağlantıya gidin.

İndirmek.

Windows Server'ın yalnızca temel bir 64 bit sürümü vardır, bu nedenle 64 bit sürümü indirin.

Windows Server'da çalıştırın.

İleri'yi tıklatın.

"Lisans sözleşmesini kabul ediyorum" u kontrol edin ve "İleri" yi tıklayın.

Tam'ı tıklatın.

"Yükle" düğmesine tıklayın.

Yükleme tamamlandığında, "Bitti" düğmesini tıklatın.

IIS Yöneticisi'yi açtığınızda, Temsilci Yönetim Hizmetleri'ne eklemiş olursunuz.

Uygulama havuzu ayarları

ASP.NET Core için .NET CLR'nin konuyla ilgisi yoktur, bu nedenle yönetilen kod olmadan bir uygulama havuzu ekleyin. Mevcut DefaultAppPool'ı güvenle değiştirebilirsiniz. Bu ayar doğrudan web dağıtımıyla ilgili değildir, bu nedenle ayrıntılarla ilgilenmem.

Bir uygulama havuzu eklediyseniz, bunu siteye ayarlayın.

Site oluşturma

Bir site oluşturun. Yeni bir tane oluşturabilir veya Varsayılan Web Sitesini sıfırdan kullanabilirsiniz. Bu İpuçları varsayılan Web Sitesini tutar. Site oluşturmanın doğrudan web dağıtımıyla bir ilgisi yoktur, bu yüzden ayrıntıya girmek istemiyorum.

Dağıtım kullanıcısı oluşturma

Bir Windows hesabında da dağıtılabilir, ancak güvenlik risklerini artırır ve özel bir dağıtım kullanıcısı oluşturur. Bir Windows hesabında dağıtıyorsanız, bu öğeyi yapılandırmanız gerekmez.

IIS Yöneticisi'ne başlayın.

Sol ağaçtan bir sunucu seçin ve merkezi Yönetim grubunda IIS Yöneticisi Kullanıcıları'nı açın.

Sağdaki Kullanıcı Ekle'yi tıklatın.

Dağıtım kullanıcısının adını ve parolasını girerek oluşturun.

Eklendi.

Dağıtıma izin ver

IIS'ye yalnızca kullanıcı eklediniz, bu nedenle her site için izinler ayarlamanız gerekir. Windows yönetici hesabıyla yayınlıyorsanız, bu ayar gerekli değildir.

IIS Yöneticisi İzinleri'ni açmak için soldaki ağaçtan siteyi seçin.

Doğru öğeden Kullanıcılara İzin Ver'i tıklatın.

Bu kez IIS'ye eklediğimiz kullanıcıyı belirttiğimiz için iis yöneticisini denetleyin ve seç düğmesini tıklatın. Windows hesabıyla yayımlamak istiyorsanız, Windows'a bakın.

Kullanıcıların listesi görüntülenir ve siz bunu seçersiniz.

Seçildikten sonra Tamam düğmesini tıklatın.

Eklenen durum.

Dağıtım ayarları

Yönetim Hizmetleri'ni açmak için soldaki ağaçtan bir sunucu seçin.

"Uzak bağlantıyı etkinleştir" ve "Windows kimlik bilgileri veya IIS Yöneticisi kimlik bilgileri" denetlenirse, hiçbir şey yapmanız gerekmez. Bir Windows hesabıyla yayınlıyorsanız, "Yalnızca Windows kimlik bilgileri" işaretliyse sorun yok.

İşaretli değilse, kontrol edin.

Her öğenin giremeyeceğiniz bir durumda olduğunu düşünüyorum, bu yüzden sağdaki "Durdur" u tıklayın.

İhtiyacınız olan öğeleri kontrol edin. İşiniz bittiğinde, sağdaki "Başlat" bağlantısını tıklayın.

Bu ekranın altında güvenliği artırmak için bir ayar var, ancak her şeyden önce, düzenlenebileceğini onaylamak gerekiyor, bu yüzden bu zamanı ayırmayacağım.

Visual Studio'dan program dağıtma

İş bilgisayarınıza dönün ve ASP.NET Core programını açmak için Visual Studio'yu başlatın. Bu kez oluşturulan yeni bir proje ile bir program yayınlayacağız.

Projeye sağ tıklayın ve Yayımla'yı seçin.

Web Sunucusu'nu (IIS) seçin ve İleri'yi tıklatın.

Web Dağıtımı'nın seçeneğini belirleyin.

Aşağıdakileri yazın:

Parametre adı değeri
sunucu IIS'yi yapılandıran sunucunun IP adresi veya DNS veya etki alanı adı. Internet'i veya intraneti belirtebilirsiniz.
Site adı IIS'ye eklenen site adını belirtir.
Son URL Beyaz alanla ilgili bir sorun yok.
Kullanıcı adı Windows Server'daki kullanıcı hesabını veya IIS'de oluşturduğunuz kullanıcı adını belirtir.
parola Yukarıdaki kullanıcının kimlik doğrulama parolasını girin.
Parolayı kaydet Her yayınladığınızda bir parola girmek zahmetliyse, kaydedin.

Gösterildiği gibi oluşturulur.

Birden çok yayımlama profili oluşturduysanız, bunları yukarıdaki açılır açılırktadır, ancak ad kafa karıştırıcıysa bunu yapabilirsiniz.

Ayrıntılı ayarlar düzenleme ekranında değiştirilebilir.

Sol sekmeden "Ayarlar" seçilir. Özel bir değişiklik yapmanız gerekmez, ancak Yapılandırma, Hedef Çalışma Zamanı ve Dosya Yayımlama Seçeneklerini gerektiği gibi değiştirin.

Sol sekmeden "Bağlan" seçilir. İlk olarak ne yazdığınızı göreceksiniz, ancak aşağıdaki "Bağlantıyı Doğrula" düğmesine tıklayın.

Yayımcıya başarıyla bağlanabildiğinizde aşağıdaki iletişim kutusu görüntülenir. Bu sertifikayı Visual Studio'da gelecekteki oturumlar için kaydet'i denetleyin ve "Kabul ediyorum" düğmesini tıklatın. Kaydederseniz, bu iletişim kutusu yalnızca ilk kez görüntülenir.

Bağlantının doğrulanmasının sağ tarafında bir onay işareti görüntülenirse, normal şekilde bağlanmak mümkün olacaktır.

Bu arada, başarısız olursa, nedeni kontrol etmek ve nedene bağlı olarak işlem yapmak için bağlantıyı tıklatın.

Yaygın nedenler şunlardır:

  • Kullanıcı adı ve parola yanlış.
  • IIS kullanıcılara izin vermiyor. Araştırma yöntemi bir Windows yöneticisi tarafından dağıtıldıktan sonra.
  • TCP 8172 güvenlik duvarına izin verilmiyor. Azure gibi bulutlar bulut tarafında buna izin vermez.
  • Web Dağıtım aracı "tam olarak" yüklü değil.
  • Iis kayıp. Lütfen bu İpuçlarını iki kez kontrol edin.

işiniz bittiğinde, Çözüm Gezgini'nden Çözüm → Project → Özellikleri → PublishProfiles'ı tıklatın genişletin ve sorun adını ayarlayın ". pubxml", böylece açılır.

Project > etiketine aşağıdaki kodu ekleyin ve PropertyGroup kaydedin:

<AllowUntrustedCertificate>True</AllowUntrustedCertificate>

Ayarlamayı bitirdiğinizde, yayımla düğmesiyle yayımlayın.

Başarıyla yayınlarsanız, işiniz biter. Ara sıra başarısız olabilir, bu nedenle bu durumda lütfen yeniden yayınlayın veya bağlantıyı doğrulayın.

Bir web tarayıcısından erişebilir ve ASP.NET Core programının çalıştığını görebilirseniz, işiniz bitti demektir.

Geçmişi güncelleştir

  • 12 Kasım 2021 : Bir süredir AllowUntrustedCertificate .pubxml gerekli olduğu için açıklama eklendi