Hallo zusammen,
so langsam werden C# und ich Freunde ....
Ich wollte mal wieder einen Entwurf meiner erstellten APP meinen Kollegen veröffentlichen und leider bekomme ich neuerdings beim Aufruf der Veröffentlichung immer eine Fehlermeldung.
Error.
An error occurred while processing your request.
Request ID:
00-6c5465b848d95afb460fa06996a4ba4e-d8d3dff2d4586635-00
Development Mode
Swapping to the Development environment displays detailed information about the error that occurred.
The Development environment shouldn't be enabled for deployed applications. It can result in displaying sensitive information from exceptions to end users. For local debugging, enable the Development environment by setting the ASPNETCORE_ENVIRONMENT environment variable to Development and restarting the app.
Ja, ich habe schon im Netz geschaut, und auch einiges probiert, aber ich bekomme es nicht hin.
Ich habe vor der letzten gelungenen Veröffentlichung an den Environment Variablen keine Änderungen vorgenommen.
Daher bin ich mehr verwundert...
Vielleicht hat einer nen guten Tipp ?
DANKE
VG
Jan-Dirk
Wie Du selbst im Hinweistext lesen kannst, wird die Fehlermeldung aus Sicherheitsgründen unterdrückt. Damit allein kann ja niemand was anfangen.
Mach doch mal das, was dort steht.. hast offenbar nich richtig gelesen.
Auf C# schieben - das hier nichmal ne Rolle spielt, weils nur die Sprache is - ist in 100% der Zeit der falsche Ansatz.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
vielleicht verstehe ich es falsch, bitte dann um Entschuldigung!
im Debug Modus lokal läuft es wie es soll.
und vorher klappten die Veröffentlichungen ohne Problem, sorry wenn ich es nicht verstehe
Da steht doch
Swapping to the Development environment displays detailed information about the error that occurred.
The Development environment shouldn't be enabled for deployed applications. It can result in displaying sensitive information from exceptions to end users. For local debugging, enable the Development environment by setting the ASPNETCORE_ENVIRONMENT environment variable to Development and restarting the app.
Dann mach das doch. Setz die Env ASPNETCORE_ENVIRONMENT
auf Development
Wenn Du das ASP.NET Template richtig hast, dann sieht es so aus:
// development web pages
if (_webHostEnvironment.IsDevelopment())
{
app.UseDeveloperExceptionPage(); <<<<<<<<<<<<<<<< das wichtig
}
UseDeveloperExceptionPage
ist nur im Dev Environment, durch die ENV, aktiv und nur dann sind Fehlermeldungen, die sensible Daten enthalten können, sichtbar.
Das hat nix mit dem Debug Modus zutun. Das sind fundamentale Dinge, wie ASP.NET Core weiß, ob Du gerade auf einem Produktivsystem bist, bei dem absolut nix an Errors geleaked werden darf, oder nicht.
Use multiple environments in ASP.NET Core
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Hallo JayDee72,
setzt doch einfach mal die Umgebungsvariable ASPNETCORE_ENVIRONMENT=Development
und schau dir den Fehler an.
Greift die App auf eine Datenbank zu? Passen dort die Zugriffsrechte?
Dateizugriffsrechte, usw. Das sind die üblichen verdächtigen.
Außerdem teil uns doch mit wohin und wie die App veröffentlicht wird. Raten können wir schon, aber obs zielführen ist...
mfG Gü
Edit: race condition mit Abt, er hat gewonnen 😃
Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.
"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"
Ich habe nun die Umgebungsvariable ASPNETCORE_ENVIRONMENT=Development
gesetzt und die Maschine komplett durchgestartet
Jetzt läuft die Veröffentlichung ...
Ich kann es mir nicht erklären, das es auch ohne Setzen der Variable vorher lief.
Sorry wenn ich euch mit meinem Halbwissen belästigt habe...
VG
Jan-Dirk
Die Variable ist nicht dazu gedacht, dass damit Deine Anwendung produktiv läuft.
Deine Fehlermeldungen werden in Zukunft sensible Daten wie zB. den ConnectioNString zur Datenbank oder Config-Settings anzeigen, wenn Du welche hast.
Beitreibe also niemals eine Anwendung im Development-Modus nach Außen. Das ist eine reine Hilfe für Entwickler.
Das fällt übrigens sogar Fahrlässigkeit, wenn damit Schaden entwickelt wird.
Wenn es wirklich an der Variable liegt, was ich mir nur schwer vorstellen kann, aber durchaus sein kann, wenn Du an der Program.cs falsch gebastelt hast, liegt zu 100% ein Programmierfehler vor.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code