initial commit
This commit is contained in:
commit
72a78b55fb
9 changed files with 2984 additions and 0 deletions
100
netops-todo-server/INSTALL.txt
Normal file
100
netops-todo-server/INSTALL.txt
Normal file
|
|
@ -0,0 +1,100 @@
|
|||
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 <Directory>-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:
|
||||
|
||||
<Directory /var/www/netops-todo>
|
||||
AllowOverride All
|
||||
Require all granted
|
||||
</Directory>
|
||||
|
||||
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.
|
||||
Loading…
Add table
Add a link
Reference in a new issue