NetOps To-Do — Installasjon på Apache ====================================== KRAV ---- - Apache 2.4+ med mod_php ELLER php-fpm (PHP 7.4+ holder, 8.x anbefales) - mod_rewrite aktivert (for .htaccess-reglene) - AllowOverride All (eller minst AllowOverride AuthConfig Limit FileInfo) i -blokken som peker på denne mappa. INSTALLASJON (3 steg) --------------------- 1. Kopier alt innholdet i denne mappa inn på webserveren, f.eks: /var/www/netops-todo/ Strukturen skal være: netops-todo/ ├── index.php ├── api.php ├── seed.json ├── .htaccess └── data/ └── .htaccess (nekter direkte web-tilgang) 2. Sett filrettigheter slik at Apache-brukeren kan skrive i data/: chown -R www-data:www-data /var/www/netops-todo/data chmod 750 /var/www/netops-todo/data (bytt www-data med din Apache-bruker hvis den heter noe annet — 'httpd' på RHEL, 'apache' på CentOS, osv.) 3. Sett opp autentisering. Enkleste variant med Basic Auth: sudo htpasswd -c /etc/apache2/netops.htpasswd jon sudo htpasswd /etc/apache2/netops.htpasswd kari # flere brukere Rediger deretter .htaccess i rot-mappa og fjern kommentar-tegnene på blokk (1). Pek AuthUserFile til riktig path. Restart/reload Apache: systemctl reload apache2 KONFIGURASJON AV APACHE VHOST ------------------------------ Hvis du kjører bak en reverse proxy (f.eks. nginx foran Apache), sørg for at Apache får brukernavnet. Eksempel på vhost-snippet: AllowOverride All Require all granted Hvis autentisering skjer i ytre proxy, send brukernavnet videre: # i nginx-proxy: proxy_set_header X-Remote-User $remote_user; # PHP leser automatisk HTTP_X_REMOTE_USER. FØRSTE GANG DU ÅPNER SIDEN -------------------------- Databasen (data/tasks.json) er tom. Siden viser en knapp "Last inn eksempel-data" som fyller på med 16 typiske NetOps-oppgaver for å demonstrere funksjonaliteten. Du kan slette alt og starte med blank liste når som helst — bruk Eksporter/Importer for å ta backup. BRUKERE OG EIERSKAP ------------------- - Påloggingsbrukernavnet (fra Apache/proxy) vises som chip i header. - Hver oppgave har et "Eier"-felt (owner) som kan settes til hvilket som helst brukernavn, eller være tomt (utildelt). - Ved ny oppgave settes eier automatisk til deg selv (kan endres). - "Ta eierskap"-knapp (👤) på utildelte oppgaver. - Filter: "Meg" / "Utildelt" / bruker-spesifikk / alle. - Hver endring logges med createdBy/updatedBy/completedBy. BACKUP ------ Alt ligger i data/tasks.json. Backup kan være en enkel cronjobb: 0 2 * * * cp /var/www/netops-todo/data/tasks.json \ /var/backups/netops-todo-$(date +\%F).json Eller bruk "Eksporter"-knappen i UI for en manuell kopi. FEILSØKING ---------- - "Uventet svar fra server" i toast → api.php ble ikke parset som PHP. Sjekk at mod_php / php-fpm er aktivt og at Apache gjenkjenner .php. - 403 Forbidden på data/tasks.json → det er riktig! Data-mappa er sperret for direkte web-tilgang. - "Kunne ikke opprette data-mappe" → Apache-brukeren mangler skriverettigheter. Se steg 2 over. - Brukernavn viser "anon" → autentisering er ikke satt opp, eller proxy-en sender ikke REMOTE_USER videre.