Kjapp og trygg hosting for Wordpress

Automatisk update?

Havers

Medlem
Hei,

Programmerer mitt eget lille cms for å gjøre det mye enklere for kundene mine. Istede for at jeg skal gå inn på vært enkelt domene, og laste opp nye filer ønsker jeg et automatisk update-system.

Hva er beste måte å gjøre dette på? Jeg tenkte at jeg legger ut filene på min webserver i en mappe, og så kan de hentes ut ved et passord (bestemmes av .htaccess), og i tillegg er det en fil med database-oppdatering.

Hvordan gjør jeg dette mest praktisk, og best kodet? Har null peiling på hvordan akkuratt denne delen skal løses.
 

GauNodac

Medlem
Hva med å skrive et BASH-script som kobler seg opp på alle kundene dine og shipper over filene slik?

Det krever riktignok terminaltilgang hos både kunde og deg selv.

For å flytte filer fra din server til kunde så bruker du SCP.
 

Pong

Jeg selger sʇɥƃıluʍop :)
Du kan også se om det finnes en slag deploy-script / versjonskontroll.
Denne type oppgave har sikkert blitt løst på 100 forskjellige måter allerede.

Hvis jeg selv måtte skrive noe sånt hadde jeg hatt endringene på en sentral server (som også du skriver), og hos hver kunde hadde jeg hatt en update-script som jeg kan anrope hvorsomhelst ifra. Det update-scriptet ville måtte gjøre er å hente en zip-fil fra sentral-serveren, pakke den ut og overskrive eksisterende filer, samt kjøre koden for å få oppdatert databasen.
Alt av påloggingsinfo (mest database) hos kunden ville jeg uansett hatt i 1 fil der og beskytte den godt.
Update-scriptet må sikres litt for at den ikke kan misbrukes.
 

Havers

Medlem
Den delen er det jeg har funnet ut av, bash kunne funket, men jeg regner med at flertallet av mine kunder ikke har ssh-tillgang.

Jeg lurer mer på hvordan jeg gjør det på den praktiske måten, hvilke funksjoner jeg skal bruke og slikt?
Har èn fil som inneholder alt "viktig" med passord og slikt, som ikke skal oppdateres what-so-ever.
 

Nutz

Med lem
Ville nok gått for en slags halvmanuell løsning der jeg styrte hvem som skulle motta oppdateringer.
Altså ikke slavisk få alle klientene til å sjekke etter opptateringer ved faste intervaller.
Dette for å ha en viss kontroll med at de endringene man har gjort faktisk fungerer "Live" på de forskjellige konfigurasjonene, og unngå unødvendig trafikk.
Husk, ha mulighet til å ta en kopi av de filene du erstatter/overskriver slik at du kan rulle tilbake en evt. mislykket oppdatering for i det minste å få siden fort opp igjen dersom noe skjærer seg.

Lage et "lytte-script" som du kaller opp med et par "sinnsyke" parametere for å starte prosessen.
Der et parameter er (SHA1-kodet med saltet filnavn på filen som ligger hos deg)

Slik at du får en URL lignende dette:
h ttp:\\kunderurl.no\oppdatCMS.php?file=de9f2c7fd25e1b3afad3e85a0bd17d9bb00db4b3&pass=cffa45df999c

Når alt er oppdatert, så kan du også kline opp en ny fil som inneholder "neste passord", slik at kunder som fatter lunta ikke uten videre kan klusse/kødde med andre som bruker ditt system.

Kan også være en utfordring å få satt optimale eier,kjøre og leserettigheter på filene etter oppdatering, da det er varierende hva de forskjellige har av sikkerhet kjørende.

Absolutt et artig prosjekt..
 
Sist redigert av en moderator:

Havers

Medlem
Jeg skal få det til, jeg tenkte noe som å sette passord med htaccess, og bytte passord på vær update, teste vær update selv, og når jeg er sikker på at det funker, så kjører jeg den ut til alle (Manuelt tar kontakt, gir passordet og ber de oppdatere).

La oss si at jeg går for løsningen at jeg har en .rar/.zip fil som jeg laster ned til brukeren, pakker ut og erstatter filer. Hvilke funksjoner ville jeg brukt til det?
 

enotodden

Medlem
Jeg ville gått for et rutinebasert oppgraderingssystem bygget inn i cms-løsningen der du tar høyde for så mange typer oppgradering som mulig..
Du kan fint lage en løsning der cms-løsningen automatisk ping'er server etter versjonnummer for så og hente ned en manifest-fil som inneholder instruksjoner og url'er til filer som skal dyttes inn.

Det som er viktig å tenke på i enhver slik løsning er sikkerhet ettersom endring av databaser og lignende fort kan bli et hull dersom amn ikke tenker seg om 42 ganger før man implementerer noe.
 
Topp