WordPress plugin-updatefout opgelost: "Could Not Create Directory" op EC2 door juiste bestandsrechten in te stellen
Plugins bijwerken in WordPress is meestal eenvoudig — maar als je je site draait op een AWS EC2-instantie en deze frustrerende fout ziet:
Update mislukt: Could not create directory...
Je bent niet de enige.
In dit artikel laat ik je zien hoe ik deze fout heb opgelost op meerdere blogsites die op EC2 draaien door de juiste bestandsrechten toe te passen. Deze gids is vooral nuttig voor ontwikkelaars en systeembeheerders die WordPress beheren op cloudservers zoals AWS.
🚫 Het probleem
Bij het bijwerken van een plugin geeft WordPress deze fout:
Update mislukt: Could not create directory. /var/www/your-site.com/wp-content/upgrade/plugin-folder
Dit betekent dat WordPress (eigenlijk PHP) geen toestemming heeft om de upgrade-map aan te maken of ernaar te schrijven.
✅ De oorzaak
Dit gebeurt meestal wanneer:
- De map eigendom is van de verkeerde gebruiker
- Onjuiste rechten PHP verhinderen om te schrijven
- De map helemaal niet bestaat
Zelfs als andere sites op dezelfde server prima werken, kan deze fout nog steeds optreden bij een specifieke site als het eigenaarschap of de rechten niet overeenkomen.
🔧 Stapsgewijze oplossing (getest op EC2)
Dit is wat ik deed om het op te lossen voor mijn blogsites:
1. Controleer huidig eigenaarschap en rechten
ls -ld /var/www/*
ls -ld /var/www/*/wp-content
Dit toont welke gebruiker eigenaar is van de bestanden van elke site. Ik hield het eigenaarschap op ec2-user voor consistentie.
2. Maak de upgrade-map opnieuw aan
Als de upgrade-map ontbreekt of beperkt is, maak deze dan veilig opnieuw aan:
sudo rm -rf /var/www/your-site.com/wp-content/upgrade
sudo mkdir /var/www/your-site.com/wp-content/upgrade
sudo chown -R ec2-user:www /var/www/your-site.com/wp-content/upgrade
sudo chmod -R 775 /var/www/your-site.com/wp-content/upgrade
3. Herstel bestands- en maprechten
Zorg voor juiste toegang in het hele project:
sudo find /var/www/your-site.com -type d -exec chmod 775 {} \;
sudo find /var/www/your-site.com -type f -exec chmod 664 {} \;
4. Stel Sticky Group Bit in (aanbevolen)
Dit zorgt ervoor dat alle nieuwe mappen de juiste groep erven:
sudo chmod g+s /var/www/your-site.com/wp-content
5. Herstart PHP en webserver
sudo systemctl restart php-fpm
sudo systemctl restart nginx
✅ Resultaat
Na het toepassen van deze wijzigingen werken plugin-updates nu soepel op alle sites — geen fouten meer.:
🧠 Pro-tip voor multi-sitebeheer
Als je meerdere WordPress-sites beheert op één EC2-server:
- Gebruik altijd een consistente gebruiker (bijv.
ec2-user) - Stel groepstoegang in op
wwwof vergelijkbaar - Gebruik
chmod g+sop kritieke mappen zoalswp-contentom toekomstige rechtenproblemen te voorkomen
📝 Conclusie
Deze fout ziet er misschien eng uit, maar is eenvoudig op te lossen als je begrijpt hoe rechten werken in een Linux-omgeving. Door het juiste ec2-user-eigenaarschap en de juiste maprechten toe te passen, voorkom je WordPress plugin-updatefouten en bespaar je uren handmatig werk.