Problema nella visualizzazione delle immagini o anteprime immagini con Drupal
Su determinati hosting - non configurati ad hoc per Drupal (in particolare ARUBA che reputo il peggior hoster del mondo...) - ci si può imbattere in un problema di non poco conto: ogni tipo di immagine non viene visualizzata, sia che usiate l'upload, sia che la richiamate scrivendo il path corretto.
Ecco la soluzione:
Assicuratevi di avere accesso ai file nascosti all'interno della cartella del vostro sito e trovate il file htaccess all'interno del percorso "sites/default/files/".
Apritelo e decommentate (simbolo # su ogni stringa) tutte le stringhe (in casi più estremi è stato segnalato da qualche utente di dover eliminare del tutto il file dalla cartella files) e poi verificate ed eventualmente intervenite sui permessi:
sites: 755
default: 555
files: 775
images: 775
Nel caso il problema persista - come gia anticipato - eliminate del tutto l'htaccess dalla cartella "sites" o lavorate sui permessi. Tuttavia la soluzione descritta è quella ottimale in quanto non è molto sicuro impostare i permessi a 777.
Problema immagini drupal con Aruba.
In alcuni casi, per siti hostati sul solito problematico ed odioso Aruba, è possibile provare una soluzione diversa nel caso quella illustrata fin'ora non abbia funzionato.
E' un po più complessa e i file da modificare saranno:
1) .htaccess nella root di drupal
2) .htaccess nella cartella sites/default/files
1 - copia questo codice nell'.htaccess della root di drupal (conserva sempre una copia di backup del precedente)
#
# Apache/PHP/site settings:
#
# Protect files and directories from prying eyes:
order deny,allow
deny from all
# Set some options
# non supportato da aruba
#Options -Indexes
# non supportato da aruba
#Options +FollowSymLinks
# Customized server error messages:
ErrorDocument 404 /index.php
# Set the default handler to index.php:
# non supportato da aruba
#DirectoryIndex index.php
# Overload PHP variables:
# If you are using Apache 2, you have to use
# instead of .
php_value register_globals 0
php_value track_vars 1
php_value short_open_tag 1
php_value magic_quotes_gpc 0
php_value magic_quotes_runtime 0
php_value magic_quotes_sybase 0
php_value arg_separator.output "&"
php_value session.cache_expire 200000
php_value session.gc_maxlifetime 200000
php_value session.cookie_lifetime 2000000
php_value session.auto_start 0
php_value session.save_handler user
php_value session.cache_limiter none
php_value allow_call_time_pass_reference On
# Various rewrite rules
RewriteEngine on
# Modify the RewriteBase if you are using Drupal in a subdirectory and the
# rewrite rules are not working properly:
RewriteBase /drupal
# Rewrite old-style URLS of the form 'node.php?id=x':
#RewriteCond %{REQUEST_FILENAME} !-f
#RewriteCond %{REQUEST_FILENAME} !-d
#RewriteCond %{QUERY_STRING} ^id=([^&]+)$
#RewriteRule node.php index.php?q=node/view/%1 [L]
# Rewrite old-style URLs of the form 'module.php?mod=x':
#RewriteCond %{REQUEST_FILENAME} !-f
#RewriteCond %{REQUEST_FILENAME} !-d
#RewriteCond %{QUERY_STRING} ^mod=([^&]+)$
#RewriteRule module.php index.php?q=%1 [L]
# Rewrite URLs of the form 'index.php?q=x':
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
# $Id: .htaccess,v 1.58 2004/10/09 20:41:49 dries Exp $
2 - copia questo codice nell'.htaccess nella cartella files
Nota: questo file lo devi copiare solo dopo aver fatto il punto 1 !!!
#
# Apache/PHP/site settings:
#
SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006
#Options None
Per il momento queste sono le 3 soluzioni possibili al problema...se ne conoscete delle altre non esitate a contattarmi o ad aggiungere un commento!






