Share via


Publication de sites Web

Mise à jour : novembre 2007

Visual Web Developer vous permet de publier vos sites Web, ce qui compile le site et copie la sortie vers l'emplacement spécifié, tel qu'un serveur de production. La publication effectue les tâches suivantes :

  • Précompilation des pages, du code source dans le dossier App_Code, etc. dans une sortie exécutable.

  • Écriture de la sortie exécutable dans un dossier cible.

Remarque :

L'utilitaire Publier le site Web n'est pas disponible dans Visual Web Developer Express.

La publication d'un site Web offre les avantages suivants par rapport à la simple copie du site Web vers un serveur Web cible :

  • Le processus de précompilation détecte toutes les erreurs de compilation et identifie les erreurs dans le fichier de configuration.

  • La vitesse de réponse initiale pour les pages est plus rapide, car ces dernières sont déjà compilées. Si vous copiez des pages vers un site au lieu de les compiler d'abord, les pages sont compilées lors de la première demande et leur sortie compilée est mise en cache.

  • Aucun code de programme n'est déployé avec le site, pour garantir la sécurité de vos fichiers. Vous pouvez publier le site avec une protection du balisage, ce qui entraîne la compilation des fichiers .aspx, ou sans protection du balisage, ce qui entraîne la copie des fichiers .aspx en l'état vers le site et vous permet de modifier leur disposition après le déploiement.

    Remarque :

    Si vous publiez une application qui contient une référence à un composant personnalisé enregistré dans le GAC, le composant ne sera pas publié avec l'application. Pour plus d'informations, consultez Comment : ajouter une référence à un composant .NET ou COM dans un site Web.

Pour plus d'informations, consultez Vue d'ensemble de la précompilation ASP.NET.

Précompilation

La première étape lors de la publication consiste à précompiler le site Web. La précompilation avant la publication est quelque peu différente de la précompilation sur place (désignée par le terme « génération » dans Visual Web Developer). La précompilation exécute essentiellement le même processus de compilation qui se produit normalement lors de la compilation dynamique d'une page lorsqu'elle est demandée dans un navigateur. Le précompilateur produit des assemblys à partir des pages, y compris le balisage et le code. Il compile également les fichiers dans les dossiers App_Code, App_GlobalResources, App_LocalResources et App_Themes.

Vous pouvez compiler à la fois des pages ASP.NET à fichier unique et des pages code-behind. Pour plus d'informations sur ces deux modèles, consultez Modèle de code des pages Web ASP.NET.

Choix entre précompilation et génération

L'étape de précompilation avant la publication diffère de la compilation qui est effectuée lorsque vous générez un site Web en le testant. La génération compile le site ou la page actuelle, ainsi que tous ses fichiers dépendants, puis l'exécute. Le processus de génération est une sorte de test, mais ne produit pas de sortie pouvant être déployée. En revanche, la précompilation lors de la publication crée dans le dossier spécifié une sortie que vous pouvez déployer sur un serveur de production.

Écriture de la sortie de précompilation

Lorsque le processus de précompilation est fini, la sortie obtenue est écrite dans un dossier que vous spécifiez. Vous pouvez écrire la sortie dans tout dossier auquel vous avez accès dans le système de fichiers, en utilisant le protocole FTP (File Transfer Protocol) ou HTTP. Vous devez avoir les autorisations appropriées pour pouvoir écrire sur le site cible.

Remarque :

Le processus de publication déploie uniquement les fichiers dans les dossiers et sous-dossiers de votre site Web. Il ne déploie pas le fichier Machine.config. Par conséquent, la configuration du serveur Web cible peut ne pas être la même sur votre ordinateur, ce qui peut avoir une incidence sur le comportement de votre application.

Vous pouvez spécifier un dossier cible sur un serveur intermédiaire ou un serveur de production, ou vous pouvez écrire la sortie dans un dossier sur votre ordinateur local. Si vous spécifiez un dossier sur un serveur de production, vous pouvez effectuer la précompilation et le déploiement en une seule étape. Si vous choisissez d'écrire la sortie dans un dossier qui ne fait pas partie d'un site Web, vous pouvez copier la sortie vers le serveur au cours d'une étape séparée.

Remarque :

Si vous ouvrez un site Web précompilé à l'aide de Visual Studio, vous ne pourrez pas générer le site Web. Les options de génération seront désactivées. Il est recommandé de modifier les fichiers dans le site Web d'origine, de précompiler le site et de le publier à nouveau.

La sortie du processus de compilation inclut les assemblys compilés pour le code ou les pages. Si vous choisissez l'option autorisant la mise à jour du site précompilé, toutes les classes code-behind pour vos fichiers .aspx, .asmx et .ashx sont compilées dans des assemblys. Toutefois, les fichiers .aspx, .asmx et .ashx eux-mêmes sont copiés en l'état dans le dossier cible afin que vous puissiez modifier leur disposition après avoir déployé le site. Pour les sites précompilés pouvant être mis à jour, le code dans les pages à fichier unique n'est pas compilé dans un assembly, mais est déployé en tant que code source.

Les fichiers statiques ne sont pas compilés. À la place, ils sont copiés en l'état dans le dossier de sortie. Les fichiers statiques comprennent des graphiques, des fichiers .htm ou .html, des fichiers texte, etc.

Si une erreur se produit pendant la précompilation, elle est indiquée dans les fenêtres Sortie et Liste d'erreurs. En cas d'erreurs pendant la précompilation, le site n'est pas compilé ni publié.

Voir aussi

Tâches

Procédure pas à pas : publication d'un site Web

Concepts

Copie de sites Web avec l'outil Copier le site Web