Problemi con sites/default/files

3 contenuti / 0 new
Ultimo contenuto
Problemi con sites/default/files

Salve a tutti!

Prima di passare a Drupal (circa 3 giorni fa :-) avevo una pagina in php in cui assemblavo (in base a dei parametri passati alla pagina) diverse immagini png in un'unica immagine, scrivevo del testo e restituivo il tutto con imagePng().

Dal mio sito poi andavo ad inserire tale immagine utilizzando un semplice <img> in cui davo all'attributo "src" il nome della pagina.

Ora vorrei che il modulo che sto realizzando per Drupal 7 facesse la stessa cosa: richiamasse questa pagina php e visualizzasse il risultato.

Per fare ciò ho creato una cartella con lo stesso nome del mio modulo in sites/default/files e li ho copiato la pagina php che genera l'immagine.

Nella funzione che genera i form del mio modulo ho inserito:

//codice parziale
$path = 'sites/default/files/mioModulo/image.php?arg=uno';
  $form['contenuto']['output'] = array(
          '#markup' => theme('image', array('path'=> $path, 'alt'=>'My Image - Alt Text', 'title'=>'My Image - Title Text')),
          '#prefix' => '<div>',
          '#suffix' => '</div>',
          '#weight' => 1,
  );

l'immagine non la visualizza...dando un'occhiata al sorgente della pagina generato effettivamente c'è il link alla pagina php (anche se è un po' diverso: <img typeof="foaf:Image" src="http://localhost/drupal/sites/default/files/mioModulo/image.php%3Farg%3D...) ma se ci clicco sopra finisco in una pagina del genere:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /drupal/sites/default/files/ccmmmaOnYourSiter/image.php?arg=uno
on this server.</p>
</body></html>

Dalle mie ricerche mi pare di aver capito che è una questione di permessi o qualcosa del genere (uso Windows 7).

Mi sono accertato che sites/default/files sia il percorso dei file pubblici nella configurazione di Drupal (e lo è) e ho provato a mettere la pagina php che genera l'immagine su un'altro PC (stessa LAN; in realtà era macchina virtuale sullo stesso PC) su cui girava un'altro server apache.

Usando l'indirizzo di quest'ultima come path per l'immagine funziona!

Aiutatemi, sto impazzendo!!!

Grazie!

Nella cartella files ci devono stare i file. Il tuo script dovresti metterlo insieme al tuo modulo e farlo eseguire da lì. Lì non dovresti aver problemi di permessi.

Grazie!

Spostando il file nella cartella del modulo non ho problemi...

P.s. Me lo dico da solo: e ci voleva un post per arrrivarci?!