Aspnet Core, Aspnet Mvc ve Aspnet WebForm projelerini bilgisyarımızda geliştirme yaparken dummy ssl sertifikalarına ihtiyacımız var. Visual Studio ile zaten otomatik denilecek kadar hızlı gerçekleşiyor ve VS soruyor bize. Evet dememiz yeterli oluyor.
Sunucuda işler biraz farklı. Gerçek bir SSL kuruldu. Ama http protokolü ile sitenizi açmak istemiyorsunuz ve https e yönlendirmek istiyorsunuz. Ya URL Rewrite modülünü IIS e kurup http den https yönlendirme işini aşağıda kod parçası ile yapacağız. yapacağız.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="HttpsRedirect" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="^OFF$" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" appendQueryString="false" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>Ya da
Aşağıdaki kod parçası gibi Startup.Cs içinde ki ConfigureServices class ında aşağıda ki gibi yazacağız.
public void ConfigureServices(IServiceCollection services)
{
if (Environment.IsProduction() || Environment.IsDevelopment())
{
services.AddHttpsRedirection(opts => {
opts.RedirectStatusCode = StatusCodes.Status308PermanentRedirect;
opts.HttpsPort = 443;
});
}
}Benim durumumda 3 farklı ortam var. o nedenle siz sizin durumunuza göre if isproduction ya da istest gibi durumları değerlendirir hangi ortama göre nasıl yönlendirme yapılacağını belirlersiniz.
bu arada 443 portu ssl portu olduğu için bu kod parçası 80 portu ile http isteklerini 443 yani https portuna yönlendirecektir.

Bir yanıt yazın