Die automatisch generierte PrecompiledApp.config verursacht mir einige Kopfschmerzen. Wenn ich die Bereitstellung einer älteren Website automatisiere und 50% der Zeit bei der Bereitstellung, erhalte ich folgende Fehlermeldung:
%Vor%Inhalt:
%Vor%Nach meinem besten Wissen verwendet die Website einige Schattenkopiefunktionen, um die Site "runtime" mit Dingen wie app.config usw. zu aktualisieren. Allerdings scheint diese 1 Datei eine Ausnahme zu sein.
Kann jemand eine Problemumgehung neben dem Stoppen der Website während der Bereitstellung vorschlagen?
Herzliche Grüße
Nach dem Pfad in der Fehlermeldung zu urteilen, versuchen Sie, die Dateien während der Bereitstellung über eine Netzwerkfreigabe zu kopieren. Dies ist eine schlechte Methode , um die Dateien direkt über eine Netzwerkfreigabe oder FTP usw. zu aktualisieren. Und das ist der Grund, tatsächlich. Die Netzwerkbereitstellung ist langsam, und während einige Dateien noch aktualisiert / hochgeladen werden, versucht ASP.NET auf dem Server bereits, die App zu recyceln, kopiert die Dateien in "Temporäre ASP.NET-Ordner" usw. usw. usw.
>ZIPen Sie Ihre vorkompilierte Site ein, laden Sie sie hoch und führen Sie UNZIP dann remote auf dem Server aus
So führen Sie UNZIP remote aus:
%Vor%"plink" ist ein kostenloses SSH-Tool für Windows (Befehlszeile), das Sie auf Ihrem Dev-Rechner benötigen
"web.prod.local" ist Ihre Serveradresse.
"c: \ Sites \ Website \" ist der Pfad Ihrer Website auf dem Server
Sie benötigen SSH, das auf Ihrem Server installiert ist, um Befehle remote auszuführen. Die einfachste Option ist auch, das kostenlose Tool zu installieren: "freesshd" (google it)
Lassen Sie "unzip.exe" auch auf dem Server los, Sie sehen, dass es genau dort aufgerufen wird. Der einfachste Weg ist, es direkt in die c: \ Sites \ Website \
zu legenPS. Dies ist nur ein Beispiel, Sie können Ihre eigene Lösung erstellen
Tags und Links asp.net web-deployment pre-compilation