# IIS Deployment Notes

- ASP.NET Core out-of-process behind IIS
- HTTPS termination at IIS
- SQLite DB stored in App_Data
- App pool identity must have write access
- Admin password via environment variable

## Publish
- From repo root: `dotnet publish -c Release -o publish`
- Copy `publish/` contents to site directory (keep `App_Data` writable by the app pool user).
- Set environment variables in web.config or IIS config:
- `ASPNETCORE_ENVIRONMENT=Production`
- `ADMIN_PASSWORD=<your-secret>`
- `BasePath=/vote` (only if the site is under a subfolder; omit for root)
- Optional: enable stdout logging in `web.config` during troubleshooting only; disable afterward.

## Permissions
- Grant modify rights to the app pool identity on `App_Data` (DB file + wal).
- Ensure firewall/HTTPS bindings match `applicationUrl` configured in IIS.
