Themes & storingen (Drupal)

Uit De Vliegende Brigade
Ga naar: navigatie, zoeken

Bestandsrechten-probleem

Soms krijg je na aanpassing van kleuren een indrukwekkende hoeveelheid foutmeldingen, vergelijkbaar met:

* The selected file sites/all/themes/xyz/images/menu-collapsed.gif could not be uploaded,
  because the destination is not properly configured.
* The selected file sites/all/themes/xyz/images/menu-expanded.gif could not be uploaded, 
  because the destination is not properly configured.
* The selected file sites/all/themes/xyz/images/menu-leaf.gif could not be uploaded, 
  because the destination is not properly configured.
* warning: imagepng() [function.imagepng]: Unable to open 'files/color/xyz2-b3b673a5/body.png' 
  for writing: No such file or directory in 
  /var/www/vhosts/domein.nl/httpdocs/modules/color/color.module on line 423.
* warning: imagepng() [function.imagepng]: Unable to open 'files/color/xyz02-b3b673a5/bg-bar.png' 
  for writing: No such file or directory in 
  /var/www/vhosts/domein.nl/httpdocs/xyz/modules/color/color.module on line 423.
* warning: imagepng() [function.imagepng]: Unable to open 
  'files/color/xyz02-b3b673a5/bg-bar-white.png' for writing: No such file or directory in 
  /var/www/vhosts/domein.nl/httpdocs/xyz/modules/color/color.module on line 423.
* warning: imagepng() [function.imagepng]: Unable to open 'files/color/xyz02-b3b673a5/bg-tab.png' 
  for writing: No such file or directory in 
  /var/www/vhosts/devliegendebrigade.nl/httpdocs/fds06/modules/color/color.module on line 423.

... 

* warning: fopen(files/color/xyz02-b3b673a5/style.css) [function.fopen]: failed to open stream: 
  No such file or directory in 
  /var/www/vhosts/domein.nl/httpdocs/xyz/modules/color/color.module on line 357.
* warning: fwrite(): supplied argument is not a valid stream resource in 
  /var/www/vhosts/domein.nl/httpdocs/xyz/modules/color/color.module on line 358.
* warning: fclose(): supplied argument is not a valid stream resource in 
  /var/www/vhosts/domein.nl/httpdocs/xyz/modules/color/color.module on line 359.

Dergelijke foutmeldingen kunnen er op duiden dat Drupal de map files/color/<...> niet kon beschrijven. Zowel files als files/color moeten beschrijfbaar zijn door derden. Soms kan het helpen om deze mappen te verwijderen en weer aan te maken. Soms lijkt dat mis te gaan, omdat Drupal wel degelijk die mappen heeft aangemaakt, maar als gebruiker apache, waardoor je zelf die mappen niet meer kunt verwijderen. Vermoedelijk de beste manier om hier mee om te gaan: Zelf de mappen files/color met bijbehorende permissies aanmaken, voordat je het huidige theme aanpast.

Soms kun je onder dezelfde omstandigheden foutmeldingen krijgen mbt. de functie open_base-nog wat: Drupal probeert dan in een tmp directory te schrijven buiten de locale webruimte om, en dat staat de server niet toe. Oplossing: Ergens onder admin > Settings kun je een standaard-locatie voor de tmp-directory specificeren. Mogelijk gaat ook daar iets mis vanwege permissies op directories.

Ook de volgende foutmelding behoort tot de mogelijkheden in bovenstaande situatie:

* warning: fopen(files/.htaccess) [function.fopen]: failed to open stream: Permission denied in 
  /var/www/vhosts/jouwdomeinnaam.nl/httpdocs/includes/file.inc on line 117.
* Security warning: Couldn't write .htaccess file. Please create a .htaccess file in your files 
  directory which contains the following lines:
     SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006
     Options None
     Options +FollowSymLinks
* The settings have not been saved because of the errors.

Casus sep. 2015 (Drupal 7): Flush all caches

Op een website was alle opmaak verdwenen. Flush all caches verhielp het probleem.

Casus okt. 2015 (Drupal 8): drush si

Na installatie middels drush si een site zonder opmaak en foutmeldingen over tijdelijke bestanden die niet gekopiëerd konden worden. Toevoegingen aan het installatiescript die de problemen verhielpen:

chmod -R 707 $root/sites/default/files
drush cache-rebuild