Plan for IIS Deployment (Windows Server / CMS Environment)
Dette er overleveringsplanen for IIS Server Administrator / DevOps for å publisere Golfklubb iT "Cart Rental App" applikasjonen til test/produksjonsmiljøet.
Steg-for-steg sjekkliste for IIS
1. Forberedelse av Runtime Miljø
- Sørg for at den korrekte versjonen av .NET 9 Hosting Bundle er installert på serveren (eller den spesifikke versjonen prosjektet kompileres for). Serveren trenger ikke SDK, kun Hosting Bundle.
- Bekreft at brannmuren mot SQL Server-instansen (
WIN-KD6TE5J6HOK) er åpen i produksjons- / DMZ-nettverket om webserver og SQL kjører på atskilte nett.
2. Sett opp Applikasjonsbasseng (App Pool)
- Opprett et nytt Application Pool i IIS, f.eks. kalt
GKIT-CartRental-AppPool. - Sett .NET CLR Version til
No Managed Code. (Krevd siden ASP.NET Core-modulen prosesserer forespørslene). - Under Advanced Settings for app-bassenget, sett Identity til en konto (Service Account eller ApplicationPoolIdentity) som har riktige tillatelser i SQL Server dersom Windows Auth brukes mot SQL, ev. standard hvis Connection String bruker SQL-brukernavn/passord.
3. Opprett og konfigurer Nettstedet (Site)
- Opprett en fysisk mappe på maskinen for filene, f.eks.
C:\inetpub\wwwroot\GKIT-CartRental. - Bygg løsningen for release lokalt via terminalen:
powershell dotnet publish -c Release -o ./publish - Kopier innholdet fra
./publish-mappen inn i IIS-mappen på serveren. - I IIS Manager, opprett et nytt Web Site eller legg til applikasjonen under eksisterende domene. Pek Physical Path til mappen med de publiserte filene.
- Bind domenet og sørg for at et gyldig SSL/TLS-sertifikat er knyttet til HTTPS bindingen, siden appen krever sikker informasjonskapsel (
SecurePolicy.Always).
4. Konfigurer Applikasjonsinnstillinger og Secrets
- Pass på at
appsettings.Production.json(ellerappsettings.json) er oppdatert med riktige produksjonsverdier. -
Sett inn riktig Tilgang for Google OAuth2:
json "Authentication": { "Google": { "ClientId": "LEGG_INN_DIKTERT_PROD_ID", "ClientSecret": "LEGG_INN_PROD_SECRET" } }(Tips: I Google Cloud Console, konfigurerRedirect URIstil domenet, f.eks.https://cart.ski-gk.no/signin-google) -
Kobling til SQL-databasen. Rediger ConnectionStrings:BookingDb til å peke på den nye produksjonsbasen:
json "ConnectionStrings": { "BookingDb": "Server=WIN-KD6TE5J6HOK;Database=BO-BOOKING-CHART;User Id=...;Password=...;TrustServerCertificate=True" }
5. Multi-Tenant kobling og E-post
- Sørg for at filen
appsettings.Tenants.jsoninneholder riktig mapping av widget API Nøkler og Domene Aliases til den riktige SQLClientID(TenantID). - For Vipps-betaling: Funksjon for eCom direkte fra appen prioriteres senere, men mobilfeltet er klart for fremtidig Vipps claims utsending pr SMS API.
- Klargjør E-post / SMTP konfigurasjonen for "Bekreftet E-post" rutinen i backend.
6. Tilgangsrettigheter
- Sørg for at IIS Application Pool-identiteten har Read & Execute-tilgang til publiseringsmappen, samt at alle eventuelle loggfiler kan skrives dersom NLog/Serilog implementeres senere.
7. Verifisering & Gjennomslag
- Start opp Web Site og App Pool.
- Gå til
/Account/Loginog verifiser at Identity laster skjermen. - Test at Google Sign-In redirect fungerer (pass på at URI-en er lagt i Google Console).
- Verifiser innlogging som ProShop / Owner gir adgang til Admin Dashboard under
/ChartAdmin.