Domanda

Uno dei misurabili di YSlow è usare domini senza cookie per servire file statici.

  

" Quando il browser richiede una statica   immagine e invia i cookie con il   richiesta, il server ignora il   biscotti. Questi cookie non sono necessari   traffico di rete. Per ovviare a questo   problema, assicurarsi che statico   i componenti sono richiesti con   richieste senza cookie creando un   sottodominio e ospitandoli lì . " -   Yahoo YSlow

Lo interpreto nel senso che potrei sperimentare un aumento delle prestazioni se sposto www.example.com/images su static.example.com/images .

Anche se questo è facile da fare, perderei la pratica capacità del mio sistema di gestione dei contenuti (Joomla / WordPress) di fare facilmente riferimento e collegarmi a queste immagini.

È possibile utilizzare .htaccess per reindirizzare tutte le richieste per una particolare cartella su www.example.com su una cartella su static.example.com ? Questo metodo ingannerebbe anche il CMS nel pensare che le immagini si trovassero nelle posizioni predefinite sul proprio dominio?

È stato utile?

Soluzione

  

È possibile utilizzare .htaccess per reindirizzare tutte le richieste   per una cartella particolare su www.esempio.com in una cartella su   static.example.com invece?

Possibile, ma controproducente & # 8212; il client dovrebbe effettuare una richiesta HTTP, ottenere la risposta di reindirizzamento, quindi effettuare un'altra richiesta HTTP.

Questo costa molto di più rispetto alla singola riga di dati sui cookie salvati!

  

Questo metodo ingannerebbe anche il CMS nel pensare alle immagini   si trovavano nelle posizioni predefinite sul proprio dominio?

No.

Altri suggerimenti

  

Anche se questo è facile da fare, lo farei   perdere l'abilità utile nel mio   sistema di gestione dei contenuti   (Joomla / WordPress) per fare facilmente riferimento   e link a queste immagini.

Quello che potresti provare a fare è creare un plugin in Joomla che crea dinamicamente questi riferimenti.

Ad esempio, hai un plug-in che inserendo {percorso dinamic_path} in un articolo, aggiunge "static.example.com/images" al percorso fornito. Quindi, ogni volta che è necessario modificare il percorso del server, è sufficiente modificare il plug-in. Per i collegamenti che sono già nel database, puoi provare a usare phpMyAdmin per cambiarli in questa struttura.

Perde ancora l'abilità WYSIWYG in TinyMCE, ma è un'alternativa.

In teoria potresti creare un dominio virtuale che punta direttamente alla cartella delle immagini, come images.example.com. Quindi nel tuo CMS (si spera a livello di tema) potresti sostituire tutti i percorsi che puntano alla cartella delle immagini con un percorso assoluto al sottodominio.

I reindirizzamenti causerebbero molto più traffico di rete e di gran lunga più latenza, che semplicemente lasciare le cose come sono.

Reindirizzerebbe la richiesta ma il client invierebbe comunque i suoi cookie al server, quindi davvero non hai realizzato nulla. Dovresti accedere direttamente ai file da un dominio che non memorizza i cookie perché funzioni.

Quello che vuoi davvero fare è usare staticexample.com/images invece di static.example.com/images in modo da non raccogliere alcun cookie sul dominio example.com che potresti aver impostato. Se tutto ciò che fai sono immagini server da quel dominio con un semplice server Apache o qualcosa del genere, puoi configurare quel server in modo che non restituisca nemmeno un cookie di sessione.

I reindirizzamenti sono una pessima idea. I cookie causano alcuni hit delle prestazioni, ma i round trip sul server come un reindirizzamento causerebbero un problema di prestazioni molto più grave.

Ho fatto di seguito e ho ottenuto il successo:

<FilesMatch "!\.(gif|jpe?g|png)<*>quot;>
    php_value session.cookie_domain example.com
</FilesMatch>

Ciò significa che se non si impostano le immagini nelle informazioni sui cookie. Quindi le immagini sono prive di cookie con il server.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top