2010-11-07 3 views
7

Ich habe ein ASP.NET-Website-Projekt, das ich auf meinem Win2k8 R2-Server auf IIS publiziere. Es hat eine Standardseite namens login.aspx. Ich habe das auf der veröffentlichten Website eingerichtet.Beim Veröffentlichen einer Website wird mein Standarddokumentname immer aus IIS entfernt.

Problem ist, jedes Mal, wenn ich eine neue Version der Website veröffentlichen, wird der Eintrag login.aspx aus den "Standarddokument" -Einstellungen der Website in IIS gelöscht. Das ist sehr ärgerlich. Wie kann ich meine Website aus Visual Studio veröffentlichen, ohne die Standardseite jedes Mal zu löschen?

+0

Sind Sie Fehler bekommen während veröffentlichen (im Ausgabefenster)? Versuche, in einem lokalen Verzeichnis zu veröffentlichen und zu sehen, was passiert. Wie lautet die Build-Aktion der Datei? – Oded

+0

@Oded - nein, überhaupt keine Fehler. Ich * bin * in einem lokalen Verzeichnis veröffentlichen; Die VS-Umgebung befindet sich auf demselben Server wie IIS und wird direkt im Ordner inetpub \ wwwroot veröffentlicht. –

+0

Seltsam. Ich habe noch nie die publish action _delete_ eine Datei auf dem Ziel gesehen. Wie lautet die Build-Aktion für die Datei (in den Eigenschaften)? – Oded

Antwort

3

Sie verwenden wahrscheinlich "Unterwebsite" und die Standarddokumentliste der Stammwebsite ist leer.

Versuchen Sie, der Stammwebsite ein Standarddokument (sogar Dummy) hinzuzufügen, und sehen Sie, ob es hilft.

(Entnommen hier: http://forums.iis.net/t/1169880.aspx)

16

Versuchen Sie, eine Defaultdocument in Ihrer Website web.config setzen:

<system.webServer> 
    <!-- your other stuff --> 

    <defaultDocument enabled="true"> 
     <files>  
      <clear/>     
      <add value="login.aspx"/> 
     </files> 
    </defaultDocument> 

</system.webServer> 

+0

Ich weiß, das ist ein alter Post, aber immer noch gerne Antworten da draußen lassen. –

+0

Danke! habe etwas rep. – Jeremy

+1

Das ist besser als die angenommene Antwort.Es ist viel schöner, dies in der Konfiguration der Website zu haben, anstatt sich darauf zu verlassen, dass die Server-Root-Website eingerichtet wird. Es ist viel expliziter und kann von der Quelle gesteuert werden. Vielen Dank! – Ryan

0

wenn die login.aspx hinzugefügt wird Untersite. es ist Typ "lokal". Es gibt diesen Fehler. sollten Sie diese Seite dem Server selbst hinzufügen. klicken Sie auf den Server und wählen Sie dann die Feature-Ansicht -> iis --- Standarddokument dann rechts klicken, um Ihre "login.aspx" -Seite hinzuzufügen.

Jetzt sollten Sie dies im Standarddokument aller Ihrer Unterseiten sehen und es wird nicht beim Publizieren oder Serverneustart gelöscht.

das ist meine persönliche exceperience

Omar kamel