Domanda

Sto sviluppando un sito asp.net (eseguendo .net 3.5 SP 1) e sto usando UrlRewriter.Net ( http: / /urlrewriter.net/ ) per urlrewriting.

Il sito è hostet su un server Windows 2003 con tutti i service pack e così via.

Esegue IIS 6.

Per abilitare la riscrittura degli URL ho impostato un gestore di caratteri jolly per *, il che significa che tutte le richieste vengono inviate tramite il motore asp.net.

Ho anche abilitato la funzione di compressione IIS: funziona perfettamente quando utilizzo gli URL non riscritti. Tuttavia non comprime le pagine riscritte.

Ho aggiunto aspx, ashx e asmx come estensioni a metabase.xml e ho impostato il livello di compressione corretto (9), ecc.

Le pagine riscritte hanno estensione .htm, quindi non dovrebbe essere perché l'estensione è sbagliata.

Qualche idea sul perché questo non funzioni?

È stato utile?

Soluzione

Probabilmente a causa del carattere jolly, IIS invia la richiesta ad ASP.NET, che gestisce ulteriormente la generazione della pagina ecc. La compressione avviene in ritardo nella pipeline, quindi viene ignorata ...

Altri suggerimenti

Purtroppo non ho abbastanza rappresentante per lasciare commenti.

Se il problema è che le compressioni si verificano nel momento sbagliato nella pipeline, mi aspetto che non funzionasse neanche per .aspx (poiché tutto viene inviato tramite il gestore asp.net)

Detto questo, immagino che potrebbe gestire .aspx prima nella pipeline, poiché credo che il gestore di caratteri jolly funzioni come "ultima risorsa". Sfortunatamente su IIS 6 non è possibile cambiare la priorità dei gestori :-(

Suppongo che dovrò chiedere al nostro amministratore un server Windows 2008 con IIS 7.

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