Come team di sviluppo, stiamo cercando di passare ad asp.net MVC e ho sentito voci su IIS 6 che non è in grado di supportare tutte le funzionalità MVC. È vero? Esiste un insieme ufficiale di funzionalità supportate in IIS 7 o IIS 6? Dovremmo assolutamente evitare di eseguirlo su IIS6?Si perde la funzionalità quando si ospita ASP.NET MVC su IIS 6? E allora?
risposta
Non si perde alcuna funzionalità di ASP.Net MVC; tuttavia, hai una delle due opzioni. Puoi definire un'estensione sui tuoi URL che ti consentirà di impostare la mappatura. Così, per esempio:
www.example.com/books/computer/list
potrebbe diventare:
www.example.com/books.mvc/computer/list
È possibile utilizzare qualsiasi estensione desiderata fino a quando si esegue la mappatura su ASP.Net. Attualmente sto usando .aspx che significa che potrei evitare di cambiare la configurazione di IIS con il sacrificio di avere URL senza estensione.
L'altra opzione menzionata è l'utilizzo di un mapping con caratteri jolly. Ciò che fa è indirizzare tutte le richieste a ASP.Net. Anche richieste di contenuto statico come immagini. Questo ha un effetto negativo sulle prestazioni che vorrete misurare. Ci sono modi per aggirare questo, credo che come mettere tutti i tuoi contenuti in una directory virtuale specifica che disattiva la mappatura dei caratteri jolly, ma non ho esplorato completamente questa opzione.
Penso che il problema con IIS6 sia URL senza estensione che è possibile ottenere facilmente aggiungendo una mappa ISAPI con caratteri jolly nella configurazione IIS.
Quindi, no. Anche se adoro la modalità integrata IIS7 e consiglio vivamente di utilizzarla, non perderete la funzionalità che la utilizza. Ho distribuito diversi progetti ASP.NET MVC 1.0 su Windows Server 2003/IIS6.
Utilizziamo IIS6 per il nostro sito di produzione e questo è l'unico effetto collaterale che abbiamo notato. –
Quindi, nessuna perdita di funzionalità? Solo più configurazione iniziale coinvolta? –
Questa è l'unica cosa che abbia mai visto e sentito in questo senso e considerando quello che so su ASP.NET e IIS in generale, questo è l'unico logico. –
La riscrittura di URL può aiutarti a risolvere il problema. Ho implementato una soluzione che consente di distribuire l'applicazione MVC in qualsiasi versione di IIS anche quando viene utilizzato l'hosting virtuale. http://www.codeproject.com/KB/aspnet/iis-aspnet-url-rewriting.aspx
Ottima risposta e spiegazione, grazie mille Josh! –
Il mio piacere buona fortuna – JoshBerke
Penso che la modalità integrata IIS7 possa anche avere questo problema di prestazioni mentre indirizza tutto su ASP.NET. Non è specifico per IIS6. –