Deze website werkt met het een Content Management System, nl Joomla. Maar niet alle sites gebruiken dat, met name kleine sites bestaan vaak uit losse html pagina's. Je loopt dan al gauw tegen een probleem op: hoe hou je de locale site en de website synchroon met elkaar.
Voor dit doel zou je bijvoorbeeld rsync kunnen gebruiken, maar een andere zeer handige utility is Sitecopy.
Sitecopy is lange tijd qua ontwikkeling nogal dood geweest, tussen maart 2006 en juli 2008 geen nieuwe releases (!), maar inmiddels is development terug op gepakt. Het wordt in ieder geval nog steeds bij de meeste distributies meegeleverd, dus laat zich op die manier eenvoudig installeren.
Maar wat is sitecopy nu eigenlijk ? Het is een hele kleine utility die documenten op 2 locaties, meestal lokaal en een website, vergelijkt en vervolgens kan synchroniseren.
Voor je deze utilitie begint te gebruiken heb je waarschijnlijk al een versie van je website online staan, zorg er voor dat deze voor je begint met sitecopy identiek is aan de pagina's op je harddisk.
Na de installatie van sitecopy (normaal gezien met de software-beheertool van je distributie) moet je een directory aanmaken en een configuratie bestand, met uiteraard de juiste rechten. Vooral dit laatste is natuurlijk belangrijk omdat je wachtwoord ook in het configuratie bestand staat.
Voer als gewone gebruiker in een terminal de volgende commando's uit:
mkdir ~/.sitecopy chmod 700 ~/.sitecopy touch ~/.sitecopyrc chmod 600 ~/.sitecopyrc
Open nu het bestand .sitecopyrc in je favoriete editor, hieronder zie je een voorbeeldconfiguratie:
site l4l server www.l4l.be protocol ftp port 21 username gebruiker password wachtwoord local /home/frederik/Documents/l4l remote /public_html/www.l4l.be/ exclude *~ checkmoved
Op zich wijst het configuratie bestand zich redelijk vanzelf:
- site: label, mag je zelf kiezen, dit label gebruik je vervolgens bij alle sitecopy acties.
- server: de hostname van de server
- protocol: het protocol waarmee je wilt uploaden, meestal upload je via ftp, maar ook webdav wordt ondersteund.
- port: standaard ftp poort, dit zal je alleen in hoogst uitzonderlijke situaties moeten aanpassen.
- ftp nopasv: heb ik niet nodig, maar soms is het nodig dat je de non passive mode gebruikt voor je upload via het ftp protocol.
- username / password: gebruikersnaam en wachtwoord op de server
- local: plaats waarin de documenten staan op je harddisk
- remote: plaats waarin de documenten staan op de webserver
- exclude: bestanden die je niet wilt uploaden
- checkmoved: als je bestanden verplaatst op je harddisk, deze ook online verplaatsen.
Als eerste stap moet je initialiseren, eigenlijk niets anders sitecopy klaar maken voor gebruik:
sitecopy -i site
Dan kun je vervolgens de lijst met bestanden die op de server staan ophalen:
sitecopy -f site
Eventueel kun je met de parameter -l de verschillen tonen tussen
local/remote, maar dat zou de eerste niet het geval mogen zijn. Nu moet je de
site synchroniseren van remote -> local, dus "downloaden":
sitecopy -s site
Sitecopy is nu klaar voor gebruik, je kunt elke keer als je nu een verandering lokaal hebt deze online zetten met:
sitecopy -u site





