2010-01-27 3 views
10

Je publie régulièrement (tous les quelques jours) mon projet Web ASP.NET sur le serveur Web local.Pourquoi app_offline.htm apparaît-il toujours dans mon projet Web?

Mais la chose la plus étrange continue à se produire ... un fichier appelé "app_offline.htm" continue d'apparaître, non-sollicité, dans mon projet web!

J'ai supprimé ce fichier plusieurs fois, il n'est pas dans le contrôle de la source, et AFAIK personne d'autre ne falsifie le projet. Mais pratiquement chaque fois que j'essaie de publier le projet, ma publication échoue (Unable to add 'app_offline.htm' to the Web site. The file 'app_offline.htm' already exists in this Web site.Error: The operation could not be completed. Unspecified error), je reviens voir le projet, et là encore c'est grand comme la vie, et je soupçonne que si ça pouvait, ça me soufflait des framboises . : p

Ayant lu un peu plus sur ce fichier, je suppose que c'est un moyen facile de mettre votre application hors ligne. Mais je n'ai vu nulle part que c'est supposé s'imposer arbitrairement sans raison valable.

Alors, où est-ce * & ^% $ # @% !! d'où vient le fichier, et pourquoi VS pense-t-il que j'en ai besoin?

+0

Est-ce que quelqu'un sait comment résoudre ce problème avec Visual Studio 2008, IIS, et avoir un dossier virtuel sur votre chemin de compilation? Cela arrive à deux de mes collègues et aucun d'entre eux ne publie. L'un utilise Vista et l'autre Windows 7. – diadem

Répondre

7

C'est un .NET 2.0 "fonctionnalité"

http://weblogs.asp.net/scottgu/archive/2005/10/06/426755.aspx

http://www.codeproject.com/KB/aspnet/app_offline.aspx

« La meilleure façon de contourner cela est de ne jamais publier directement sur votre serveur. Vous ne devriez pas quand même ... Publiez dans un dossier local puis copiez le site. "

Utilisez-vous Visual Studio? http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=102778

+0

+1 Liens utiles, mais celui sur microsoft.com est cassé. –

+0

Le lien microsoft peut être corrigé si vous venez de vous débarrasser du .3 à la fin. –

+0

+ crédit de réponse - le lien MS avait l'info que je cherchais. Merci! –

4

Par défaut, le processus de publication place un dans votre répertoire de destination, puis le supprime lorsque le processus de publication est terminé. Peut-être est-il empêché de le supprimer quand il essaie de le faire?

Voici un extrait de l'article MSDN here:

Avant de copier des fichiers d'application, l'outil du site Web Copy met un fichier nommé App_offline.htm dans le répertoire racine du site Web cible. Alors que le fichier App_offline.htm existe, toutes les demandes au site Web sont redirigées vers ce fichier. Le fichier affiche un message convivial indiquant aux clients que le site Web est en cours de mise à jour. Lorsque tous les fichiers de site Web ont été copiés, l'outil Copier le site Web supprime le fichier App_offline.htm du site Web cible.

Je suppose que pour une raison quelconque, il ya deux événements de publication en conflit d'une manière ou d'une autre?

La façon dont je contourne cela est d'utiliser nant pour construire ma solution et copier ensuite les choses que je veux. Je copie d'abord le fichier app_offline en utilisant la fonction, mais je gère quand il est copié et supprimé.

+0

J'ai remarqué que quand il y a un thumbnail.db qui est un fichier système et il n'a pas été ignoré il peut parfois avoir du mal à supprimer ces types de fichiers et ce fichier App_offline.htm être générés et ensuite placé joliment dans votre corbeille. – RetroCoder

Questions connexes