2008-09-15 5 views
14

Nous créons de nouveaux sites dans IIS 6 (Windows Server 2003) en utilisant le Gestionnaire des services Internet (IIS). Lorsque ces sites sont créés dans IIS 6, la version ASP.NET par défaut est ASP.NET 1.1. Nous aimerions qu'il soit par défaut à ASP.NET 2.0. La raison pour laquelle cela nous pose un problème est que lorsque vous prenez n'importe quel site sur le serveur et que vous passez de la version ASP.NET d'ASP.NET 1.1 à ASP.NET 2.0, tous les sites Web sont recyclés.Comment indiquer à IIS 6 de définir la version .NET sur 2.0 (et non sur 1.1) lors de la création de nouveaux sites?

Existe-t-il un paramètre dans la métabase IIS qui contrôle cela ou un moyen de créer un site via un script qui définit correctement la version ASP.Net afin que nous puissions éviter la réinitialisation IIS lors de la configuration de chaque site?

Répondre

6

Soyez averti, en cours d'exécution aspnet_regiis -i realloueront tous vos sites Web IIS à 2,0. Si vous avez des applications 1.1 que vous souhaitez conserver, exécutez plutôt aspnet_regiis -ir. Cela définira 2.0 comme étant le runtime par défaut pour IIS, mais ne modifiera pas les mappages de script pour les sites existants.

+0

bien je pensais que nous pouvons cibler des sites spécifiques pour mapper à 2.0 en utilisant aspnet_regiis. Je l'ai fait de nombreuses fois sans affecter les autres sites 1.1 .. –

+0

Le point de la question est de par défaut 2.0, ne pas modifier les sites existants à 2.0. – Bloodhound

1

Réponse simple: Ouvrez le Gestionnaire des services Internet. Dans le volet de navigation, recherchez le site Web .NET2 et faites un clic droit dessus. Sélectionnez "Propriétés". Ensuite, sélectionnez l'onglet "ASP.NET". La première liste déroulante sur cet écran vous donne l'option de sélectionner une version différente de .NET.

Veuillez noter que lorsque j'ai fait cela, tous les sites Web du serveur Web ont cessé de fonctionner. Microsoft support m'a dit que .NET1 et .NET2 ne devraient pas être exécutés à partir de la même zone générale (sites Web par défaut) du serveur Web. La solution consiste à créer un pool d'applications sur le serveur Web pour les sites .NET1 ou .NET2, puis à l'utiliser pour isoler tous les sites exécutant «l'autre» version de .NET. L'instruction pour créer un pool d'application peut être trouvée sous "aide" dans le gestionnaire d'IIS.

Vous pouvez créer un seul pool d'applications et mettre tous les sites avec le même .NET dans le même pool ou vous pouvez créer un pool d'applications pour chaque application. Votre choix.

+1

Quelle est la version d'IIS? Dans IIS6, je ne trouve pas l'onglet ASP.NET, ou est-ce que quelque chose me manque? –

11

Comme déjà mentionné par un autre, je référence ce post chaque fois que je dois modifier les paramètres .NET pour un site.

Quant à votre question, les étapes suivantes (résumées à partir du poste lié) devraient permettre d'atteindre ce dont vous avez besoin:

  1. Exécuter aspnet_regiis -lk de tout dossier framework .NET pour lister vos paramètres actuels pour vous aider à déterminer les sites doivent rester en utilisant .NET 1.1. Si vous savez qu'il existe un site .NET 1.1, mais qu'il n'est pas explicitement listé par cette commande, il hérite de la racine W3SVC/.

  2. Pour tous les sites 1.1 .NET qui ne figurent pas explicitement par la commande précédente, vous aurez besoin de les forcer à utiliser .NET 1.1:

    1. Déterminer l'ID d'identifiant du site (s) que vous voulez forcer à utiliser .NET 1.1. (Par l'intermédiaire du Gestionnaire IIS 6, vous pouvez déterminer l'Identifiant d'un site en cliquant sur le dossier "Sites Web" sur le côté gauche de l'outil.Sur le côté droit, tous vos sites seront répertoriés et la colonne Identifiant affiche l'ID
    2. Depuis le .NET 1.1 dossier du framework, exécutez aspnet_regiis -sn W3SVC/<Identifier ID>/ROOT/<Identifier ID> est l'ID du site que vous voulez forcer à utiliser .NET 1.1.
  3. Enfin, modifiez la racine W3SVC/ pour utiliser .NET 2.0 afin que tous les sites nouvellement créés héritent de la racine et utilisent par défaut .NET 2.0. Pour modifier la racine, à partir du dossier .NET 2.0 framework, exécutez aspnet_regiis -sn W3SVC/.

Vous pouvez exécuter aspnet_regiis -lk à nouveau pour vérifier vos paramètres.

2

Ce qui suit réglera le site Web par défaut ASP.NET 2.0:

C: \ windows \ Microsoft.NET \ Framework \ v2.0.50727 \ aspnet_regiis.exe -sn W3SVC/

applications enfants hériteront le paramètre ASP.NET à partir du parent, donc tous les enfants auront le nouveau paramètre.

Vous pouvez également exécuter cette commande en tant que variante après avoir configuré la nouvelle application.

Rob

Questions connexes