Télécharger .NET 8.0.12 Windows Server Hosting Bundle (ASP.NET Core) : lien direct, installation, vérification et dépannage sur Windows Server 2022

Vous cherchez le Hosting Bundle .NET 8.0.12 pour Windows Server 2022 ? Voici le lien direct officiel, le chemin “clic‑clic”, puis un guide pas à pas pour installer, automatiser, vérifier et dépanner l’hébergement IIS d’applications ASP.NET Core.

Sommaire

Où télécharger l’installateur « .NET 8.0.12 – Windows Server Hosting » (ASP.NET Core Hosting Bundle) ?

Vue d’ensemble de la question

Sur des VM Windows Server 2022, vous devez passer à .NET 8.0.12. Vous avez trouvé le runtime, mais pas l’installateur Windows Server Hosting/Hosting Bundle qui ajoute le module IIS (ANCM) et prépare IIS pour ASP.NET Core. Ci‑dessous : le lien direct, plus le chemin d’accès depuis la page officielle « Download .NET ».

Réponse & solution (lien direct + chemin “clic‑clic”)

Lien direct (officiel) vers l’installateur 8.0.12 – Hosting Bundle :

https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/8.0.12/dotnet-hosting-8.0.12-win.exe

La page « Thanks for downloading » confirme le nom du fichier et propose aussi le SHA512 pour vérification d’intégrité (hash).

Chemin “clic‑clic” pour le retrouver :
Download .NET 8.0 → section ASP.NET Core Runtime 8.0.12 → colonne Windows → lien Hosting Bundle.


Ce que contient le Hosting Bundle .NET 8.0.12

Le Hosting Bundle installe tout le nécessaire pour héberger des applications ASP.NET Core sous IIS :

  • ASP.NET Core Runtime 8.0.12 (x64, et x86 si vous ne l’excluez pas).
  • .NET Runtime requis par ASP.NET Core (x64/x86 sauf exclusion).
  • ASP.NET Core Module V2 (ANCM) pour IIS : passerelle entre IIS et votre app Kestrel.
  • Les entrées et handlers IIS nécessaires (in‑process ou out‑of‑process).

Quelques emplacements utiles après installation :

ÉlémentChemin / VérificationCommentaire
Exécutable dotnet%ProgramFiles%\dotnet\dotnet.exeAccessible dans le PATH.
Runtime .NET 8%ProgramFiles%\dotnet\shared\Microsoft.NETCore.App\8.0.12\Présence du dossier = runtime installé.
Runtime ASP.NET Core 8%ProgramFiles%\dotnet\shared\Microsoft.AspNetCore.App\8.0.12\Présence du dossier = ASP.NET Core installé.
ANCM V2 (module IIS)%ProgramFiles%\IIS\Asp.Net Core Module\V2\aspnetcorev2.dllVérifier l’onglet Détails (version).
Logs ANCMObservateur d’événements → Journaux Windows → ApplicationSource : IIS AspNetCore Module V2.

Procédure d’installation (résumé express)

  1. Installer IIS avant le bundle (Gestionnaire de serveur → Ajouter des rôles et fonctionnalités → Rôle Serveur Web (IIS)). Si IIS a été ajouté après, relancez le bundle en réparation.
  2. Installation silencieuse (optionnel) : dotnet-hosting-8.0.12-win.exe /install /quiet /norestart Options utiles : OPT_NO_RUNTIME=1, OPT_NO_SHAREDFX=1, OPT_NO_X86=1 (par ex. pour héberger uniquement des apps self‑contained ou éviter x86).
  3. Redémarrer IIS après l’installation : net stop was /y net start w3svc (WAS = Windows Process Activation Service)

Procédure détaillée et bonnes pratiques

Préparer Windows Server 2022

  • Appliquer les mises à jour Windows (sécurité et cumulatives).
  • Installer le rôle IIS avec, a minima, Serveur WebDéveloppement d’applicationsPrise en charge CGI (non requis pour ASP.NET Core pur) ; toutefois, pour ASP.NET Core, l’essentiel est le module ANCM apporté par le bundle. Ajoutez WebSockets si vos apps en ont besoin.
  • Vérifier que l’UAC, l’antivirus et les politiques d’exécution n’empêchent pas l’installation (exécuter en administrateur).

Télécharger et installer

  1. Télécharger le binaire indiqué plus haut (ou le copier depuis un dépôt interne) sur le serveur.
  2. Installer en mode interactif (Double‑clic) ou en mode silencieux : Start-Process -FilePath .\dotnet-hosting-8.0.12-win.exe ` -ArgumentList '/install','/quiet','/norestart' -Wait -PassThru
  3. Si IIS n’était pas présent lors de la première installation, relancer l’EXE et choisir Repair (ou : .\dotnet-hosting-8.0.12-win.exe /repair /quiet /norestart )
  4. Finir par un redémarrage d’IIS (voir commandes plus haut). Un redémarrage du serveur n’est pas nécessaire sauf si le programme d’installation le demande (fichiers verrouillés).

Options de ligne de commande (sélection)

OptionEffetQuand l’utiliser
/installInstalle les composants requis.Déploiements standard et automatisés.
/repairRépare les fonctionnalités intégrées à IIS/ANCM.Si IIS a été ajouté après ou en cas de corruption.
/quiet /norestartInstallation silencieuse, sans redémarrage automatique.CI/CD, Intune, ConfigMgr, scripts.
OPT_NO_RUNTIME=1N’installe pas le .NET Runtime.Environnements avec apps self‑contained uniquement.
OPT_NO_SHAREDFX=1N’installe pas Microsoft.AspNetCore.App (shared framework).Apps 100 % self‑contained (déconseillé si vous avez des apps dépendantes de la shared FX).
OPT_NO_X86=1Évite l’installation des composants x86.Hébergement x64 exclusif (pools d’applications 64 bits).

Vérifier l’intégrité (SHA512) et l’installation

Comparez le SHA512 affiché sur la page « Thanks for downloading » avec le hash du fichier téléchargé :

Get-FileHash .\dotnet-hosting-8.0.12-win.exe -Algorithm SHA512

Après installation, vérifiez les composants :

dotnet --info
# Runtimes .NET et ASP.NET Core 8.0.12 :
Get-ChildItem "$env:ProgramFiles\dotnet\shared\Microsoft.NETCore.App" | Select Name
Get-ChildItem "$env:ProgramFiles\dotnet\shared\Microsoft.AspNetCore.App" | Select Name

# Module IIS (ANCM) :

(Get-Item "\$env\:ProgramFiles\IIS\Asp.Net Core Module\V2\aspnetcorev2.dll").VersionInfo |
Format-List ProductVersion, FileVersion

# Vérifier la présence du module dans IIS :

& \$env\:windir\system32\inetsrv\appcmd.exe list modules | Select-String AspNetCoreModuleV2 

Automatisation (Intune, ConfigMgr, GPO, scripts)

Téléchargement contrôlé et installation silencieuse

$url  = 'https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/8.0.12/dotnet-hosting-8.0.12-win.exe'
$dest = 'C:\Temp\dotnet-hosting-8.0.12-win.exe'
New-Item -ItemType Directory -Force -Path (Split-Path $dest) | Out-Null
Invoke-WebRequest -Uri $url -OutFile $dest

# (Optionnel) Vérifier le SHA512 ici puis installer :

Start-Process \$dest -ArgumentList '/install','/quiet','/norestart' -Wait </code></pre>

<h3>Règles de détection (exemples)</h3>
<ul>
  <li><strong>Fichiers/versions</strong> : vérifier l’existence de <code>%ProgramFiles%\dotnet\shared\Microsoft.AspNetCore.App\8.0.12\</code> et <code>%ProgramFiles%\IIS\Asp.Net Core Module\V2\aspnetcorev2.dll</code>.</li>
  <li><strong>Registre</strong> (Programmes et fonctionnalités) : rechercher <em>Windows Server Hosting</em> ou <em>Microsoft ASP.NET Core 8.0.12</em> dans
    <code>HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*</code> et
    <code>HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*</code>.
    <pre><code>Get-ItemProperty HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*, `
  HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* |
  Where-Object { $_.DisplayName -match 'ASP\.NET Core|Windows Server Hosting' } |
  Select-Object DisplayName, DisplayVersion, Publisher

Ordre d’installation recommandé

  1. Rôle IIS + fonctionnalités requises (et WebSockets si nécessaire).
  2. Hosting Bundle .NET 8.0.12.
  3. Redémarrage IIS (net stop was /y puis net start w3svc).
  4. Déploiement de l’application (site IIS, App Pool, web.config).

Configuration IIS : points d’attention pour ASP.NET Core

  • Modèle d’hébergement : par défaut InProcess sur Windows ; l’app tourne dans w3wp.exe via ANCM. OutOfProcess exécute Kestrel en dehors de w3wp et proxy via ANCM.
  • Pool d’applications : No Managed Code (recommandé pour ASP.NET Core), 64 bits si vos apps sont 64 bits.
  • Permissions du dossier : le compte du pool doit pouvoir lire le dossier de l’application (et écrire si logs stdout activés).
  • WebSockets : activez la fonctionnalité si vos apps en utilisent.
  • Compression & HTTP/2 : utiles pour les performances (HTTP/2 activé par défaut sur TLS).

Exemple de web.config minimal (InProcess) :

&lt;configuration&gt;
  &lt;system.webServer&gt;
    &lt;handlers&gt;
      &lt;add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" /&gt;
    &lt;/handlers&gt;
    &lt;aspNetCore processPath="dotnet" arguments="&quot;MyApp.dll&quot;" stdoutLogEnabled="false" hostingModel="InProcess" /&gt;
  &lt;/system.webServer&gt;
&lt;/configuration&gt;

Vérifications post‑installation (checklist rapide)

  • dotnet --info affiche les runtimes .NET 8.0.12 et ASP.NET Core 8.0.12.
  • Le fichier aspnetcorev2.dll existe et sa version est cohérente avec l’installation.
  • IIS liste le module AspNetCoreModuleV2 (appcmd list modules).
  • Un site de test ASP.NET Core démarre sans erreur (HTTP 200).

Dépannage (erreurs courantes et résolutions)

SymptômeCause probableRésolution
HTTP 500.31 « ANCM Failed to Find Native Dependencies »Runtime ASP.NET Core requis manquant ou non détecté.Installer/ réparer le Hosting Bundle 8.0.12 ; vérifier Microsoft.AspNetCore.App\8.0.12.
HTTP 500.30 « ANCM In‑Process Handler Load Failure »Module ANCM absent/corrompu ou web.config invalide.Réparer le bundle ; contrôler la section <aspNetCore .../> du web.config et les événements IIS AspNetCore Module V2.
HTTP 502.5 « Process Failure »L’app ne démarre pas (dépendances, port, variables d’env., droits).Activer stdoutLogEnabled="true" temporairement, vérifier les logs et les permissions du compte de pool.
Échec d’installation 0x80070643 / fichiers verrouillésComposants en cours d’utilisation (IIS, services).Arrêter WAS/W3SVC, relancer, puis redémarrer IIS ; en dernier recours, redémarrer le serveur.
Conflit x86/x64Pool en 32 bits mais runtime x86 manquant.Soit activer 64 bits et supprimer x86 (OPT_NO_X86=1), soit installer aussi les composants x86.
App cible une ancienne patch 8.0.xSuppression prématurée d’anciens runtimes.Conserver les versions cible tant que des apps les demandent ; sinon mettre à jour les apps et nettoyer ensuite.

Logs utiles :

  • Observateur d’événements → Journaux WindowsApplication → Source : IIS AspNetCore Module V2.
  • Si stdoutLogEnabled="true" : dossier stdoutLogFile configuré dans web.config (désactiver après diagnostic).

Mise à jour, maintenance et sécurité

  • Mises à jour : les patchs .NET 8 sont side‑by‑side. Installer 8.0.12 ajoute des dossiers 8.0.12 et laisse les 8.0.x existants. Les apps ciblant 8.0.x continuent de fonctionner.
  • Nettoyage raisonné : désinstaller d’anciens patchs uniquement après avoir confirmé qu’aucune app ne les requiert (vérifier global.json / cible framework, tests de non‑régression).
  • Support : .NET 8 est une version LTS avec support jusqu’au 10 novembre 2026.
  • Réduction de surface : si vous n’hébergez que des apps self‑contained, vous pouvez installer le bundle avec OPT_NO_SHAREDFX=1 et OPT_NO_RUNTIME=1 pour limiter les binaires partagés (au prix d’un diagnostic plus complexe).

FAQ

Faut‑il redémarrer le serveur ?
Pas en général. Un redémarrage IIS (WAS + W3SVC) suffit. Si le programme d’installation le demande (fichiers verrouillés), planifiez une fenêtre de redémarrage.

Le Hosting Bundle installe‑t‑il le SDK ?
Non. Le Hosting Bundle installe les runtimes et ANCM, pas le SDK. Le SDK n’est nécessaire que pour la compilation/développement sur le serveur (déconseillé en prod).

Dois‑je installer x86 ?
Uniquement si vous exécutez des App Pools 32 bits ou des applications 32 bits. Sinon, installez en x64 uniquement (OPT_NO_X86=1).

Quid si IIS a été installé après le bundle ?
Relancez l’exécutable du bundle et choisissez Repair (ou /repair) afin de reconfigurer les handlers/modules IIS.

Comment vérifier rapidement que tout est bon ?
1) dotnet --info affiche 8.0.12, 2) Microsoft.AspNetCore.App\8.0.12 existe, 3) aspnetcorev2.dll est présent, 4) votre site de test répond en 200.


Exemple de script “tout‑en‑un” (téléchargement, vérification, installation, validation)

$ErrorActionPreference = 'Stop'

# 1) Paramètres

\$url   = '[https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/8.0.12/dotnet-hosting-8.0.12-win.exe](https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/8.0.12/dotnet-hosting-8.0.12-win.exe)'
\$dest  = 'C:\Temp\dotnet-hosting-8.0.12-win.exe'
\$sha512\_expected = ''  # (optionnel) collez ici le SHA512 affiché sur la page "Thanks for downloading"

# 2) Téléchargement

New-Item -ItemType Directory -Force -Path (Split-Path \$dest) | Out-Null
Invoke-WebRequest -Uri \$url -OutFile \$dest

# 3) Vérification d’intégrité (optionnelle)

if (\$sha512\_expected) {
\$hash = (Get-FileHash \$dest -Algorithm SHA512).Hash.ToLower()
if (\$hash -ne \$sha512\_expected.ToLower()) {
throw "SHA512 invalide. Attendu=\$sha512\_expected; Obtenu=\$hash"
}
}

# 4) Installation silencieuse

\$proc = Start-Process -FilePath \$dest -ArgumentList '/install','/quiet','/norestart' -Wait -PassThru
if (\$proc.ExitCode -ne 0) {
throw "L’installateur a retourné le code \$(\$proc.ExitCode)"
}

# 5) Redémarrage IIS

Start-Process -FilePath 'cmd.exe' -ArgumentList '/c','net stop was /y & net start w3svc' -Wait

# 6) Vérifications

dotnet --info
Test-Path "\$env\:ProgramFiles\dotnet\shared\Microsoft.AspNetCore.App\8.0.12" | Out-Null
& \$env\:windir\system32\inetsrv\appcmd.exe list modules | Select-String AspNetCoreModuleV2 | Out-Null
Write-Host 'Hosting Bundle 8.0.12 installé et détecté.' 

Scénarios avancés

Hébergement self‑contained uniquement (sans shared framework)

Si toutes vos applications sont publiées en self‑contained (elles embarquent leur runtime), vous pouvez réduire la surface système :

dotnet-hosting-8.0.12-win.exe /install /quiet /norestart OPT_NO_RUNTIME=1 OPT_NO_SHAREDFX=1 OPT_NO_X86=1

Attention : vous devez alors gérer soigneusement les mises à jour de sécurité côté applications (republish à chaque patch).

Rollback / Désinstallation

  • Les patchs .NET étant side‑by‑side, il est généralement plus simple d’installer un nouveau patch que de rétrograder.
  • Pour supprimer, utilisez « Programmes et fonctionnalités » ou un outil de gestion logicielle. Ne désinstallez pas un runtime si une application le cible encore.

Compatibilité, prérequis et cycle de vie

  • OS : Windows Server 2022 est pleinement pris en charge par .NET 8.
  • Prérequis VC++ : pour Windows Server 2022, aucun prérequis additionnel n’est normalement requis (les redistribuables VC++ peuvent l’être sur des OS plus anciens).
  • Support LTS : .NET 8 est une version LTS supportée jusqu’au 10 novembre 2026.

Checklist finale

  • Téléchargement : ok (hash SHA512 vérifié).
  • IIS installé avant le bundle (sinon Repair exécuté).
  • Installation silencieuse : /install /quiet /norestart (avec options adaptées x86/runtime/shared FX).
  • Redémarrage IIS effectué (net stop was /y puis net start w3svc).
  • Vérifications : dotnet --info + dossiers 8.0.12 + module ANCM présent.
  • Site de test ASP.NET Core répond en 200.

En bref

Le Hosting Bundle 8.0.12 existe bien et fonctionne sur Windows Server 2022. Utilisez le lien direct ci‑dessus, ou passez par Download .NET 8.0ASP.NET Core Runtime 8.0.12Hosting Bundle. Installez après IIS, redémarrez IIS, puis vérifiez dotnet --info, la présence des dossiers 8.0.12 et du module AspNetCoreModuleV2.

Astuce : conservez les versions dont vos applis ont besoin, et profitez du support LTS de .NET 8 jusqu’au 10 novembre 2026.

Sommaire