Gli stili di immagine restituiscono Accesso negato


22

Sto usando il modulo Inserisci per consentire agli utenti di inserire immagini con uno stile di immagine specifico in una pagina. Dopo l'aggiornamento a Drupal 7.20, le immagini non vengono memorizzate nelle files/stylescartelle e l'URL dell'immagine restituisce un errore 403 (accesso negato). Ho controllato i permessi della cartella e sono tutti impostati su 777.


Ho anche installato il modulo media_flickr, ma credo che i miei stili di immagine funzionassero dopo l'installazione. Potrei sbagliarmi.
Evan Johnson,

Risposte:


32

Si consiglia sempre di leggere le note di rilascio della nuova versione prima dell'aggiornamento, per assicurarsi che l'aggiornamento non interrompa alcune delle funzionalità correnti.

Le note di rilascio di Drupal 7.20 menzionano:

Le correzioni di sicurezza in questa versione cambiano tutti gli URL derivati ​​dell'immagine generati da Drupal per aggiungere un token come stringa di query. (Ad esempio, i collegamenti che in precedenza puntavano a un URL come http://example.com/sites/default/files/styles/thumbnail/public/field/image/example.png ora indicheranno un URL come http: / /example.com/sites/default/files/styles/thumbnail/public/field/image/example.png?itok=zD_VaCaD .)

Puoi aggiungere la seguente riga alla tua settings.phpper far funzionare le immagini nel sito:

$conf['image_allow_insecure_derivatives'] = TRUE;

ma sarebbe buono come aggiornare il core e non usare gli aggiornamenti ;-)

Alcuni link utili dalla pagina:

AGGIORNARE:

Dalle note di rilascio di Drupal 7.21, l'aggiornamento include correzioni per incompatibilità introdotte solo nella versione di sicurezza di Drupal 7.20. Pertanto, si consiglia di aggiornare all'ultima versione, ovvero 7.21 per utilizzare le correzioni di sicurezza nella versione 7.20.


2
doh! sì, leggere le note di rilascio è buono. Ho la brutta abitudine di scrivere semplicemente "drush up drupal". Grazie!!!
Evan Johnson,

la patch in # 1923554 ha funzionato per il mio problema
rémy il

@ rémy, per favore, vedi la modifica.
AjitS

non voglio consentire derivati ​​non sicuri. la cosa strana è che, quando provo a creare un'immagine all'interno di uno stile di immagine, mi dà l'URL e il token di sicurezza, ma stampa ancora l'accesso negato. qualche idea?
Alex,

3
Questo problema persisterà anche se dovunque nel codice stavi chiamando image_style_path () per generare il percorso dell'immagine, questo deve essere cambiato in image_style_url () per generare correttamente il token.
Masterchief

3

Per quello che vale, ho anche scoperto che in qualche modo le mie directory in stile immagine non erano più impostate le autorizzazioni corrette dopo un aggiornamento e svuotare la cache.

I root style / [your style] e styles / [your style] / public dovrebbero essere 755 per consentire il corretto caricamento delle cose.

Modificandole tutte, le immagini apparivano correttamente!


1

Correggi il tuo file system: / admin / config / media / file-system

Ecco le mie impostazioni:

Imposta il percorso di sistema pubblico : sites / default / files

Il percorso del file system privato è vuoto.

Directory temporanea: / tmp

Metodo di download predefinito (selezionato) File locali pubblici serviti dal server web.


1

L'esecuzione di questa modifica NON ha risolto il problema e ha prodotto errori:

la riga 775 di moduli / image / image.admin.inc necessita di una patch ...

775> - $preview_file = image_style_path($style['name'], $original_path);
775> + $preview_file = image_style_url($style['name'], $original_path);

(poiché la mia reputazione è bassa, non posso ancora commentare sotto quella risposta separata)

Ho implementato in questo modo indietro e ha risolto molte cose quando si è presentato per la prima volta il problema:

$conf['image_allow_insecure_derivatives'] = TRUE;

Ho anche implementato cambiando tutto +FollowSymLinksper +SymLinksIfOwnerMatchma ancora non sono in grado di ottenere stili di immagine in anteprima per funzionare correttamente.

L'ultima e ultima opzione è quella di modificare le autorizzazioni utente di dimensioni server, ack. O riparerò o distruggerò tutto.


0

la riga 775 di moduli / image / image.admin.inc necessita di una patch ...

775> - $preview_file = image_style_path($style['name'], $original_path);
775> + $preview_file = image_style_url($style['name'], $original_path);

4
I gattini moriranno se questo viene utilizzato. (Non hackerare mai il core).
Stefgosselin,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.