Come si modifica l'estensione in cui verranno eseguite le pagine .Net?
-
04-07-2019 - |
Domanda
Ho bisogno della mia applicazione .net per usare l'estensione .html invece di .aspx
Sto convertendo un'app php e ci sono applicazioni esterne che dipendono dall'estensione per funzionare.
Qual è il modo migliore per farlo?
Grazie
Soluzione
In IIS, quando crei l'applicazione per la directory virtuale, fai clic su " Configurazione " per l'applicazione e modifica " Mapping app " ;, ovvero aggiungi un nuovo mapping per html.
Oppure, nel tuo web.config, aggiungi queste sezioni:
<httpHandlers>
<remove verb="*" path="*.html" />
<add verb="*" path="*.html" type="System.Web.UI.PageHandlerFactory" />
</httpHandlers>
<compilation>
<buildProviders>
<buildProvider
extension=".html"
type="System.Web.Compilation.PageBuildProvider" />
</buildProviders>
</compilation>
EDIT: aggiunta la sezione, secondo il commento. Grazie Chris.
Altri suggerimenti
Desideri utilizzare httpHandlers
Nota che non sono sicuro al 100% che funzionerà con l'estensione PHP, stiamo usando questa procedura per un'estensione personalizzata qui.
È possibile modificare la configurazione IIS: Apri la console IIS (fai clic con il tasto destro su Risorse del computer > Gestisci ... > Servizi e applicazioni)
- Se ti trovi in ??un sito Web, apri le proprietà dei siti Web e la " Home directory " scheda.
- Se ti trovi in ??una directory virtuale, le proprietà quindi la " Directory virtuale " scheda.
Fai clic sul pulsante " Configurazione " ;, cerca l'estensione .aspx e usa la stessa configurazione per " .php " estensione (suggerimento: è possibile copiare incollare il nome della dll eseguibile tra entrambe le finestre di dialogo)
Qualche tempo fa, abbiamo migrato un'applicazione web da coldfusion a PHP e abbiamo dovuto conservare i vecchi URL. Il modo in cui lo abbiamo fatto è stato usare mod_rewrite per riscrivere gli URL .cfm in quelli .php. Forse puoi fare qualcosa di simile?