8 votes

Dans IIS, est-il préférable d'héberger plusieurs applications en tant que sites web indépendants ou en tant que répertoires virtuels dans le site par défaut ?

Contexte

J'ai récemment développé une application MVC pour un client qui souhaite l'héberger, ainsi que quelques autres applications, sur le même serveur.

Je suis plus un développeur qu'un administrateur de serveur, mais mon instinct m'a poussé à créer un nouveau site dans IIS avec sa propre liaison de sous-domaine.

Le client, cependant, aimerait créer un répertoire virtuel dans le site par défaut qui pointe vers l'application. Donc, par exemple, vous auriez :

COMPANY.COM/APP1 y COMPANY.COM/APP2

Plutôt que :

APP1.COMPANY.COM y APP2.COMPANY.COM

この a fait fonctionne ; cependant, il y avait un conflit avec les URL relatives dans le balisage HTTP standard, un problème qui a été rapidement résolu.

Question

Est-il préférable d'héberger plusieurs applications Web sur le même serveur en tant que sites distincts ou en tant que répertoires virtuels au sein du site Web par défaut ? L'approche des répertoires virtuels présente-t-elle des écueils ?

Je ne juge pas l'approche du répertoire virtuel, elle est simplement nouvelle pour moi et je veux m'assurer qu'elle ne posera pas de problèmes maintenant ou à l'avenir.

0 votes

J'ai la même question que l'OP. J'utilise actuellement un site par application car cela me permet de démarrer et d'arrêter les sites Web individuels. Cependant, notre DNS n'est pas configuré pour nous permettre d'utiliser les en-têtes d'hôte, de sorte que chaque site Web doit fonctionner sur un port différent. Cela donne des URL peu conviviales. Les VD sous le site Web par défaut permettraient d'avoir des URL conviviales, mais au détriment de la granularité.

0 votes

Hein ? S'il s'agissait vraiment d'URL relatives, cela n'aurait pas eu d'importance que l'application se trouve sur son propre site, dans un répertoire virtuel ou dans le répertoire d'un autre site à plusieurs niveaux de profondeur.

5voto

Brent Pabst Points 6049

J'ai toujours essayé de m'en tenir aux sites individuels pour les applications. Vous avez beaucoup plus de contrôle sur tout et, si vous utilisez ASP.NET, vous n'êtes pas confronté aux problèmes de cascade web.config qui sont faciles à rencontrer. De plus, vous disposez d'un contrôle plus fin sur les pools d'applications et vous êtes en mesure de surveiller les performances de chaque application. Tout cela est une question de préférence.

Quoi qu'il en soit, la meilleure réponse est probablement que vous appliquez les liaisons au niveau du site Web et NON au niveau de l'application. Ainsi, si chaque application a besoin de sa propre URL ou de SSL par opposition à non-SSL, vous devez vraiment examiner les sites individuels.

De plus, comme vous le mentionnez, vous devez presque programmer en tenant compte du mécanisme de déploiement. En effet, toute utilisation d'URL relatives entraîne de nombreux problèmes.

Enfin : pourquoi ne veulent-ils pas utiliser des sous-domaines ? Si vous voulez mon avis, cela permet une séparation RESTfulish des ressources très propre.

0 votes

Séparation RESTful des ressources qui ne peuvent pas être facilement partagées sans configurer CORS ou Jsonp.....

1voto

August Points 3104

Je dirais que ça dépend... Les applications sont-elles très similaires les unes aux autres, de sorte que vous pourriez effectuer un seul changement au niveau supérieur qui se répercuterait sur chaque répertoire virtuel sans avoir d'impact sur la fonctionnalité d'une seule application ? Si vous avez un site séparé pour chaque application, vous devrez gérer séparément les paramètres de chaque site (Certs, IPs, ports, etc.), ce qui peut être un casse-tête s'il y en a beaucoup, mais ce sont des sites totalement indépendants, donc un paramètre n'affectera pas une autre application. Le véritable travail est effectué par le processus de travail/le pool d'applications. Dans les deux cas, vous pouvez partager le même pool d'applications pour plusieurs applications ou en avoir un distinct pour chaque application.

  • Applications sur des sites distincts \= contrôle beaucoup plus granulaire de l'application et de la manière de comment s'y connecter, au prix d'une maintenance accrue pour chaque site.
  • Applications sur le même site \= plus facile à gérer s'ils sont tous très similaires, mais vous pourriez rencontrer des problèmes de configuration si les applications ont des exigences contradictoires.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X