Durante la fase di sviluppo, se il nostro sito dovrà essere esposto sotto HTTPS, è senza dubbio utile poter testare il nostro sito in questo tipo di scenario. Il primo passo da compiere, se stiamo utilizzando IIS Express come server di test, è abilitare l'uso di SSL da Visual Studio, accedendo alle proprietà del progetto:
A questo punto il nostro sito sarà già attivo e navigabile tramite HTTPS, se digitiamo l'URL generato da IIS Express e indicato nell'immagine in alto.
Tipicamente, però, se abbiamo attivato il supporto a SSL, vogliamo anche forzare dei redirect verso questo protocollo nel caso l'utente acceda tramite HTTP. Come avveniva nella versione per .NET Framework, anche in ASP.NET Core abbiamo a disposizione la classe RequireHttpsAttribute. Se vogliamo far sì che si applichi a ogni richiesta, possiamo registrarla come global filter allo startup dell'applicazione.
public void ConfigureServices(IServiceCollection services) { // Add framework services. services.AddMvc(options => { options.Filters.Add(new RequireHttpsAttribute() { Permanent = true }); options.SslPort = Configuration.GetValue<int>("Https:Port"); }); // .. other services .. }
Nel codice in alto abbiamo specificato che il redirect deve essere di tipo Permanent, ossia con un 301. Questo è un accorgimento parecchio importante nel caso in cui vogliamo far sì che la nostra modifica sia corretta dal punto di vista SEO.
L'altra opzione che abbiamo usato è SslPort, che ci permette di specificare la porta su cui effettuare il redirect. Se lasciata vuota, la richiesta viene inviata alla porta standard 443, ma se siamo in test possiamo indicare quella configurata in IIS Express in appsettings.json.
{ // ... "Https": { "Port": "44302" } }
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Evitare (o ridurre) il repo-jacking sulle GitHub Actions
Filtrare i dati di una QuickGrid in Blazor con una drop down list
Disabilitare automaticamente un workflow di GitHub (parte 2)
Usare lo spread operator con i collection initializer in C#
Gestire la cancellazione di una richiesta in streaming da Blazor
Effettuare il binding di date in Blazor
Gestione degli stili CSS con le regole @layer
Ottimizzare il mapping di liste di tipi semplici con Entity Framework Core
Utilizzare Azure AI Studio per testare i modelli AI
Configurare lo startup di applicazioni server e client con .NET Aspire
Testare l'invio dei messaggi con Event Hubs Data Explorer
Gestire eccezioni nei plugin di Semantic Kernel in ASP.NET Core Web API
I più letti di oggi
- Simulare Azure Cosmos DB in locale con Docker
- Utilizzare il metodo Index di LINQ per scorrere una lista sapendo anche l'indice dell'elemento
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- .NET Conference Italia 2024 - Milano
- .NET Conference Italia 2023 - Milano e Online