Jump to navigation Jump to sub-content

Serviceblock

logo-linked-in twitter fronteers-logo RSS logo 2Value

Joomla!

Informatie m.b.t. het Joomla! CMS, tips en truuks, etc

Hier vind je van alles over het Joomla! Content Management Systeem. Let op: veel informatie betreft de oude Joomla! serie, 1.0.x. Maar inmiddels is er Joomla! 1.5: beter, meer mogelijkheden en de voorbereiding op Joomla! 1.6

  • Joomla

Hoe maak je een back-up van je Joomla site?

Lees meer...

  • Joomla

De lokatie van je configuratie, de content en de templates

Lees meer...

  • Joomla

Update: als je je hosting laat regelen door Byte, dan ben je van al het onderstaand gezeur af. Byte heeft slimme trucks toegepast, misschien zijn ze hierin niet uniek, maar van hun weet ik zeker dat het goed werkt.

Over chmod en chown, FTP, 644, 755, file ownership, bestanden niet te verwijderen

Bron

De nu volgende kennis heb ik opgedaan op twee series van cursussen die ik ooit volgde bij Hewlett-Packard Nederland B.V. (http://www.hp.nl/general/route1.html)

Deze cursussen zijn:

  • UNIX fundamentals
  • UNIX HP UX Admin and Networking

Vooraf:
Ik gebruik een aantal synoniemen:

file = bestand
directory = folder = map

Joomla en het niet kunnen verwijderen van remote bestanden

Er is veel misverstand over Joomla en bestanden die je niet kan verwijderen of bewerken (via ftp). Voor je het weet, spring je uit je vel want er is niets (relatief gezien) zo irritant als een foutmelding op zondagavond dat het bestand niet verwijderd kon worden.

Eigenlijk is het heel makkelijk...

Maar je moet je er wel even toe zetten.

Niet Joomla maar UNIX is de schuldige!

Om te beginnen wil ik even de echte schuldige aanwijzen en dat is niet Joomla maar UNIX. Wellicht ten overvloede, maar UNIX is het besturingssysteem waar Joomla (meestal) op draait en dat je benadert met je FTP programma.

UNIX rechten in 10 woorden

Nu zal ik proberen in een paar zinnen uit te leggen hoe het zit met het bestands-rechten systeem onder UNIX:

  • In UNIX heeft elk bestand een eigenaar
  • Deze eigenaar kan rechten geven aan zichzelf en aan anderen (dit heet een CHMOD, en is een afkorting van CHange MODe)
  • Deze rechten bepalen wat er met het bestand gedaan kan worden
  • Vraag: waarom zou je eigenlijk niet gewoon alle rechten aan jezelf geven? Antwoord: om jezelf in bescherming te nemen voor domme acties
  • Vraag: waarom zou je bepaalde rechten niet aan anderen geven? Antwoord: omdat je ze niet vertrouwt
  • Vraag: welke 'anderen' hebben we het hier over? Antwoord: er zijn 2 soorten 'anderen': a) de anderen die lid zijn van jouw groep, en b) de rest van de wereld. We hebben het dus over 'jezelf', 'jouw groep' en 'de rest' (het is net echt)
  • Vraag: welke rechten kun je onderscheiden? Antwoord: a) schrijf-rechten, b) lees-rechten en, 3) minder belangrijk, execute-rechten (vergeet deze laatste). Schrijf-rechten zijn nodig om een bestand te kunnen verwijderen

tot nu toe hebben we nog geen probleem... blijf echter lezen...

  • Als je een bestand uploadt zal deze meestal standaard de volgende rechten krijgen:

-jij krijgt zelf lees- en schrijf-rechten op dat bestand,
-en de groep, en de rest van de wereld krijgt alleen lees-rechten (dit wordt weergegeven door het getal 644; vraag niet waarom, voor je eigen bestwil).

  • Als je een directory uploadt (ook wel folder of map geheten)

-zul je zelf ook weer lees- en schrijf-rechten krijgen en als extraatje de execute-rechten (die heb je nodig op directories)
-en zal de rest van de wereld (jouw groep dus en de rest) alleen lees- en execute rechten krijgen en geen schrijf-rechten. Dit wordt met de volgende 'afkorting' weergegeven: 755 *)

*) Even tussendoor: Soms hebben web hosting bedrijven hun servers anders ingesteld.
Ik heb een snelle proef op de som genomen. Ik heb een mapje met daarin een bestandje ge-upload en heb gekeken wat voor rechten deze kregen:

provider #1: dir: 755 files: 644
provider #2: dir: 761 files: 664
provider #3: dir: 755 files: 644

Je ziet dus dat het door mij opgelepelde rechten-verhaal soms een beetje afwijkt.

Maar goed, je zou nog steeds zeggen: wat is het probleem... maar blijf nog even hangen...

Heer en Meester

Als jij met je ftp -programma files uploadt, is er geen probleem: jij bent als eigenaar heer en meester over de files en directories.

Even tussendoor: Hoe kun je zien wie de eigenaar is?
Hoe kun je zien wie de eigenaar is van een bestand of directory? Gebruik hiervoor bijvoorbeeld Smart-FTP. Volgens mij lukt het met FileZilla niet om dit te zien te krijgen. Met Smart-FTP kun je bij de eigenschappen van een bestand/file of map/directory zien wie de eigenaar is en tot welke groep het behoort.

Installeren van een Joomla Extensie

Maar nu ga je het volgende doen: je gaat een extra component, module, of mambot installeren via de Joomla installation optie. Of je gaat via de Joomla media manager plaatjes uploaden, of een folder aanmaken op de lokatie images/stories

VANAF NU HEB JE EEN PROBLEEM!

Als je via de Joomla installer iets installeert, of als je via Joomla plaatjes of bestanden uploadt, dan doe jij dat niet, maar dan doet Joomla dat. Oftwel, niet jouw user-id (waarmee je inlogt op je webserver als je bestanden wilt uploaden) is de eigenaar maar Joomla's user-id, en dat user-id is een ander user-id dan dat van jou, helaas. Vaak is dat een standaard systeem user-id, of hoe je het ook wilt noemen. Het kan elke naam hebben (hangt van de fantasie van degene die het UNIX systeem installeerde) maar het is vaak 'nobody' of bijvoorbeeld 'www-data'.

Jij bent niet meer de eigenaar

Hoe het allemaal zijn moge: jij bent niet meer de eigenaar van die bestanden. Hoogstwaarschijnlijk hebben de bestanden dus weer standaard de waarde 644 gekregen (dus lees- en schrijf-rechten voor de eigenaar, en lees-rechten voor de groep en de rest van de wereld. Alleen wil het geval dat JIJ nu bij de rest van de wereld hoort. Oftwel: jij hebt slechts lees-rechten. Je kunt het bestand dus eenvoudigweg niet verwijderen :-(

Wat kun je hier aan doen?

Er zijn voor zover ik kan overzien twee oplossingen, en die zal ik hier toelichten.

JoomlaXplorer

Éen manier om dit op te lossen, is het installeren van joomlaXplorer, een Joomla-component dat een soort Verkenner imiteert. Je kunt er, zij het niet zo geavanceerd als met de Windows Verkenner bestanden mee manipuleren. Het leuke is dat je dus nu ook die bestanden kunt verwijden en verplaatsen waarvan jij niet de eigenaar bent, want je doet het vanuit hetzelfde user-id als die waar het Joomla systeem de bestanden uploadde. Op sommige hosts laat het systeem zich echter niet installeren.

CHOWN

CHOWN staat voor CHange OWNer. Het is een UNIX commando. Je kunt het zelf niet uitvoeren (tenzij je Shell Accesshebt maar dat is standaard meestal niet het geval op een shared hosting omgeving, een ander woord voor goedkopere web hosting abonnementen :-). je kunt de helpdesk van je web hosting provider vragen om een CHOWN te doen op de gewenste bestanden. Je kunt ook gewoon vragen of ze je de eigenaar willen maken. Je kunt ook vragen of ze je gewoon eigenaar van alle bestanden maken. Dat is echter een drastische stap, die volgens mij wel goed gaat, maar ik wil hier geen harde uitspraak over doen. Het hangt ook van de kwaliteit van de geïnstalleerde extensies af, die je hebt geïnstalleerd. Als die de rechtenkwesties niet helemaal goed afhandelen kun je een probleem krijgen.

  • Joomla

Regelmatig verschijnen er Joomla!-updates, of patches, of upgrades, of hoe je het ook wilt noemen

Deze updates verschijnen meestal net als je wilt gaan slapen, als je een weekendje weg wilt, of als je het beredruk hebt.

Het officiële advies is altijd om zo snel mogelijk te upgraden. Dat is een lekker makkelijke uitspraak, en er is zit veel speelruimte in. Er staat niet: binnen vier uur upgraden, of iets dergelijks.

Het is wijs om dit inderdaad zo snel mogelijk te doen. Maar soms is het ook slim om even te wachten en te kijken wat anderen zeggen over het upgraden.

Heb je veel extra componenten geïnstalleerd, dan wil het wel eens gebeuren dat die niet altijd vlekkeloos samenwerken met een nieuwe Joomla!-versie.

Je zou kunnen zeggen dat elke update een zeker aantal bugs verwijdert, maar er ook weer enkele introduceert.

Het idee is dat er meer bugs verdwijnen dan er bij komen.

Upgraden: uiteindelijk altijd doen dus, maar als je veel extra componenten en plug-ins hebt geïnstalleerd, kan het lonen om even een paar dagen af te wachten.

Zorg in ieder geval dat je website bij een goeie webhoster wordt gehost. Neem nou Byte, mijn favoriet, vaak voeren ze, als er sprake is van grote security risico's meestal al een nood-patch uit voor alle bij hun gehoste sites, als jij op vakantie bent.

Het overschrijven van FTP bestanden, hoe??

Als er een update voor Joomla verschijnt dien je bestanden te overschrijven; de code in de bestanden is dan aangepast en deze bestanden moeten op de server geplaatst worden. Hoe overschrijf je deze bestanden nu op een betrouwbare manier? Dien je elke file in elke subdirectory apart te uploaden? Hoe doe je dat zonder knettergek te worden? Kun je een directory met sub directories uploaden en zal dan elke file overschreven worden? Of niet?

Makkelijker dan je misschien denkt

Antwoord: als je FileZilla gebruikt (en waarschijnlijk werkt dit zo met elke ftp-client) dan kun je een directory (met subdirectories) verslepen van lokaal naar remote en dan zal de file structuur intact worden gelaten en de nieuwere files zullen, nadat je dit bevestigt, overschreven worden. Het is dus inderdaad zo simpel als je zou denken en niemand legt het verder uit. Maar ik hoop dat ik diegenen die verder doordenken (of misschien te ver doordenken) hiermee geholpen heb.

Zelfde verhaal voor Windows XP

Hetzelfde verhaal geldt voor je lokale webserver op Windows XP: als je een map in Windows Explorer over een andere map heen kopieert en je geeft aan dat je bestanden wilt overschrijven zodra hierover een melding verschijnt, dan zullen al bestaande files overschreven worden met de oude (en blijft de de directory structuur gehandhaafd). Dus eigenlijk is dit vergelijkbaar met het ftp verhaal.

Upgrade instructies op de officiële Joomla!-site

http://docs.joomla.org/Upgrading_1.5_from_an_existing_1.5x_version

Het ziet er erg ingewikkeld uit, maar uiteindelijk is het niet zo moeilijk maar kost het gewoon veel tijd.

  • Joomla

Hoe zit een URL in elkaar? Over ID, ITEM ID, SEO en SEF

Lees meer...

[top]

Sub-content

Meer over mij

Fronteers IRC

Bouw je websites en heb je vragen? Neem een kijkje op Fronteers-IRC. Ook niet-leden zijn welkom.

Omschrijving

Ik ben een front-end web developer, gespecialiseerd in Joomla en specialiserend in de Webrichtlijnen.

Ik ontwerp / design geen websites.

Nieuwe artikelen

T-shirts

Neem eens een kijkje op "The Green Cuckoo, a new clothing label designed to meet today's concerns", een initiatief van een vriend van mij. Mooie T-shirts!

[top]