5.1 KiB
Deployment / IIS Handoff 2026-05-19
Ziel
TrafagSalesExporter bleibt das fuehrende Projekt, wird aber fuer den Server als ASP.NET/IIS-Webanwendung im bisherigen BiDashboard-Schema veroeffentlicht.
Das separate lokale Projekt ..\BiDashboard wird fuer die aktuelle Weiterarbeit nicht benoetigt. Die relevanten Publish-/Hosting-Einstellungen wurden in TrafagSalesExporter uebernommen.
Server / URL / Publish-Pfad
Server / DNS:
trch-webapp-bidashboard.trafagch.local
tragvapp401.trafagch.local
10.120.1.17
Publish-Share:
\\trch-webapp-bidashboard.trafagch.local\BiDashboard$\
Wahrscheinliche Browser-URL:
https://trch-webapp-bidashboard.trafagch.local/BiDashboard/
Hinweis: Ohne /BiDashboard bzw. ueber HTTP kam lokal weiterhin 404 Microsoft-HTTPAPI/2.0. Mit https://.../BiDashboard meldete der Browser laut Test 500, was bedeutet, dass IIS die Application erreicht.
Aktueller Publish-Stand
Das Projekt TrafagSalesExporter.csproj erzeugt jetzt eine BiDashboard-Publish-Ausgabe:
BiDashboard.dll
BiDashboard.deps.json
BiDashboard.runtimeconfig.json
BiDashboard.staticwebassets.endpoints.json
web.config
wwwroot
runtimes
trafag_exporter.db
Microsoft.AspNetCore.Authentication.Negotiate.dll
Bewusst:
- keine EXE / kein AppHost
UseAppHost=falseAssemblyName=BiDashboardRootNamespace=TrafagSalesExporterMicrosoft.AspNetCore.Authentication.Negotiateist enthalten wie im altenBiDashboard-Projekt- lokale Build-/Probe-Ordner werden vom Publish ausgeschlossen
Relevante Commits:
8d10372 Configure Trafag web publish profile
f128d35 Publish web app without apphost
e9b616f Align Trafag publish output with BiDashboard
1533570 Exclude local build artifacts from web publish
5087a7c Enable IIS publish diagnostics
Veroeffentlichen
Standard-Publish:
dotnet publish .\TrafagSalesExporter.csproj -c Release --no-restore /p:PublishProfile=FolderProfile --verbosity minimal
Das Publish-Profil liegt hier:
Properties/PublishProfiles/FolderProfile.pubxml
Diagnose-web.config
Im Repo liegt eine explizite web.config, damit IIS/ANCM Diagnoseinformationen liefern kann:
<httpErrors errorMode="Detailed" existingResponse="PassThrough" />
<aspNetCore processPath="dotnet"
arguments=".\BiDashboard.dll"
stdoutLogEnabled="true"
stdoutLogFile=".\logs\stdout"
hostingModel="inprocess" />
Der Ordner logs wurde auf dem Share angelegt:
\\trch-webapp-bidashboard.trafagch.local\BiDashboard$\logs
Nach einem Browser-Reload mit 500 war der Ordner weiterhin leer. Das deutet auf eines der folgenden Themen:
- App-Pool darf nicht in
logsschreiben. - Fehler passiert auf IIS/ANCM-Ebene vor dem App-Start.
- IIS verwendet einen anderen Physical Path als den Share-Ordner.
Rechtebefund
ACL auf dem Publish-Ordner zeigte:
IIS_IUSRS: ReadAndExecute
TRAFAGCH\koi: FullControl
Versuch, Rechte selbst zu setzen:
icacls "\\trch-webapp-bidashboard.trafagch.local\BiDashboard$" /grant "IIS_IUSRS:(OI)(CI)M" /T
Ergebnis:
Zugriff verweigert
Auch per SID fuer IIS_IUSRS wurde es abgelehnt. Wir koennen publishen und Dateien schreiben, aber keine NTFS-/Share-Rechte auf dem Server aendern.
Wahrscheinlichster aktueller Fehler
Die App startet in Program.cs sofort die Datenbankinitialisierung:
DatabaseInitializationService.InitializeAsync()
db.Database.EnsureCreatedAsync()
PRAGMA journal_mode=WAL
Schema-Wartung
SeedDefaults
SQLite schreibt bzw. aendert dabei mindestens:
trafag_exporter.db
trafag_exporter.db-shm
trafag_exporter.db-wal
Wenn der App-Pool nur Lesen/Ausfuehren hat, kann das beim Start als 500 enden.
Server-Spezialist: konkrete Bitte
Bitte auf dem Server tragvapp401 pruefen:
- IIS Application
/BiDashboardzeigt auf genau den Ordner mit dieser Datei:
\\trch-webapp-bidashboard.trafagch.local\BiDashboard$\web.config
oder auf den entsprechenden lokalen physischen Pfad.
-
App-Pool-Identity ermitteln.
-
Dieser konkreten App-Pool-Identity
Modifygeben auf:
Publish-Ordner
logs\
trafag_exporter.db
trafag_exporter.db-shm
trafag_exporter.db-wal
Alternativ voruebergehend IIS_IUSRS mit Modify, wenn die genaue App-Pool-Identity nicht klar ist.
-
App-Pool neu starten.
-
URL testen:
https://trch-webapp-bidashboard.trafagch.local/BiDashboard/
- Wenn weiter
500, bitte pruefen:
\\trch-webapp-bidashboard.trafagch.local\BiDashboard$\logs
und Windows Event Viewer:
IIS AspNetCore Module V2
Application Error
.NET Runtime
Aktueller Restzustand im Git-Working-Tree
Es gibt weiterhin alte/unabhaengige lokale Dateien und geloeschte Alt-Dokumente im Working Tree. Diese wurden bewusst nicht committed:
../BiDashboard/
.tmp_tools/
Tools/FinanceProbe/.tmp_tools/
verify_probe_out*/
docs/CFO_Kurzbericht_270515_NEU.docx
docs/FINANCE_AMPEL_LAENDER_2026-05-19.xlsx
financeprobe.*.log
mainapp.*.log
Ausserdem sind mehrere alte Dateien als geloescht markiert. Nicht blind committen, bevor klar ist, ob sie wirklich entfernt werden sollen.