2012-08-23 15 views
5

Sviluppo un'applicazione ASP.NET MVC 3. Ho scaricato il modulo UrlRewriting e ho creato alcune regole per il mio sito web localmente. Successivamente ho pubblicato questo sito Web su Internet per verificare le prestazioni. Va bene. Poi ho continuato a lavorare di nuovo localmente. Ho commentato il blocco di codice nel file web.config riguardante queste regole. Quindi non ci sono regole anche in IIS Manager. Il problema è che le regole continuano a influire! Ad esempio, ho definito "Regola hostname canonico" per reindirizzare il browser al nome del sito "www. *". Quindi questa regola continua a influenzare, cioè il server IIS locale reindirizza il mio sito Web in esecuzione locale a quello reale su Internet. Inoltre ho installato IIS Express per provarlo anche io. Il risultato è lo stesso. Non riesco a capire dove sia il problema. Quindi, non ci sono regole di riscrittura su server IIS e IIS Express, ma hanno ancora effetto.IIS 7.5. Impossibile disabilitare le regole di riscrittura degli URL (ho eliminato le regole ma hanno ancora effetto)

+1

Ok, scusa per la mia domanda :) Il motivo era la cache del browser. L'ho appena ripulito e il problema è scomparso. Comunque è una cosa strana. Non sapevo che il browser salvasse tali regole nella cache. – ifeelgood

+2

Il browser non memorizza nella cache le regole stesse, ma mantiene le tracce degli URL richiesti (riscritti). Per efficienza, il browser rileva se l'URL è stato richiesto; se tale URL è stato riscritto, viene pubblicato il contenuto di quell'URL precedentemente pubblicato. Spero che questo aiuti, R/ – roland

+0

Sì, cancellando la cache risolto per me, grazie. –

risposta

2

Il modulo di riscrittura dell'URL si collega a mio un po 'bacato quando la configurazione cambia perché la configurazione caricata non viene aggiornata finché IIS non viene riavviato.

+0

Oppure il pool di applicazioni corrente riciclato. –

2

La risposta tardiva è in ritardo. Molto probabilmente il reindirizzamento era "permanente" quindi un 301, quindi verrà memorizzato nella cache dei browser. Se vuoi che sia un reindirizzamento temporaneo con il codice 307.

Problemi correlati