Caching 51Degrees e IIS, MVC3, potenziale problema con output
-
29-10-2019 - |
Domanda
L'ho notato durante il debug e voglio assicurarmi che non accada in produzione:
Ho implementato una versione mobile del mio sito Web, utilizzando la libreria 51Degrees con la mia app basata su MVC3. Non sto usando un URL o un sottodominio personalizzato, quindi ogni richiesta viene analizzata per vedere se proviene da un browser mobile prima di restituire le versioni normali o mobili dell'HTML.
Durante il debug ho notato che IIS a volte cacherà l'output della pagina. Ho visto solo questo accadere nella home page. Ogni volta che veniva memorizzata nella cache, lo stesso contenuto veniva servito a browser mobili e desktop, quindi ovviamente è sbagliato.
Sono consapevole del numero di modi per prevenire il lato della memorizzazione nella cache del browser, ma ho pensato di controllare se esiste un modo specifico consigliato per gestirlo?
Soluzione
Avrei ragione nel pensare che stai usando lo stesso URL per le pagine mobili e non mobili? In tal caso, dovrai utilizzare la seguente impostazione.
Risposta.cache.varybyheaders.useragent = true;
Ciò assicurerà che le cache configurate correttamente memorizzeranno una versione diversa della pagina da UserAgent String.