Laden...

Fehlermeldung nach Veröffentlichung

Letzter Beitrag vor 11 Monaten 7 Posts 555 Views
Fehlermeldung nach Veröffentlichung

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.

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

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.