2009-05-26 8 views
1

Comment puis-je créer un nouveau site Web ou ajouter un en-tête d'hôte à un serveur IIS 7 existant à partir du code?IIS7 Ajouter un nouveau site Web/En-tête de l'hôte Formulaire Web ASP.NET

J'ai regardé et n'ai pas été capable de trouver un exemple de travail?

+1

Pouvez-vous essayer d'expliquer un peu plus précisément ce que vous essayez de faire? "IIS7 Ajouter un nouveau site Web/en-tête d'hôte ASP.NET Web Form" est juste un tas de mots clés. –

+0

J'ai besoin d'ajouter un nouveau site Web/hostheader au sein d'une application de formulaire Web asp.net par programmation. –

Répondre

0

Une solution serait de créer un HttpModule personnalisé qui fait le travail pour vous, mais il vous faut un DNS prenant en charge les caractères génériques (*). Si votre DNS ne supporte pas cela, vous pourriez envisager de gérer votre propre DNS. Cela dit, voici un bon article sur la création d'un HttpModule qui analyse le "sous-domaine" passé et transmet le trafic à l'endroit approprié. Il utilise un mécanisme de recherche [pour localiser le contenu avec des mots-clés correspondant au sous-domaine], mais il peut être modifié pour vos propres besoins.

http://codebetter.com/blogs/brendan.tompkins/archive/2006/06/27/146875.aspx

[EDIT] Une autre solution serait de trouver un fournisseur de DNS qui offre un service de DNS programmable, peut-être par le biais d'un service Web. Vous ajouteriez ensuite un sous-domaine à ce DNS par programmation si nécessaire à partir de votre application. C'est une explication super simplifiée, et ne prend pas en compte les besoins de votre entreprise. Personnellement, je préfère l'option HttpModule pour ajouter des sous-domaines dans une application, car elle nécessite moins de modification du ou des serveurs concernés.

+0

Cette réponse suppose que vous voulez faire des sous-domaines. – nkirkes

0

Quelle version de .Net utilisez-vous?

Si vous utilisez .Net 3.0 ou 3.5, et si vous avez seulement besoin de configurer IIS7 (pas 6 ou 5), consultez l'espace de noms Microsoft.Web.Administration - il devrait avoir tout ce dont vous avez besoin.

Si vous utilisez une ancienne version de .net, consultez WMI.

Je n'ai aucun code WMI pour IIS 7 (nous avons une configuration pour une application intranet, mais elle utilise WMI compatible avec IIS 6). Mais, voici un lien vers un outil que vous pouvez utiliser pour trouver les trucs WMI: http://www.microsoft.com/downloads/details.aspx?familyid=2cc30a64-ea15-4661-8da4-55bbc145c30e&displaylang=en Il va réellement générer du code C# (ou vb.net) pour manipuler WMI. Pour IIS 7, je pense que l'espace de noms racine WMI est root \ WebAdministration.

En outre, un coup d'oeil à ce lien, il peut aider Get to Know the IIS 7.0 WMI Provider Using CIM Studio

Questions connexes