# SSL Proxy (прекращённый)

Source: https://docs.sisk-framework.org/ru/docs/extensions/ssl-proxy.html

> [!CAUTION]
> **Прекращён, не использовать.** Пакет Sisk.SslProxy больше не поддерживается и помечен как устаревший в NuGet, без заменяющего пакета. Он больше не компилируется с текущим API Cadente. Для обслуживания HTTPS используйте встроенную поддержку SSL в [Cadente engine](https://docs.sisk-framework.org/ru/docs/cadente.md) или один из вариантов в [Working with SSL](https://docs.sisk-framework.org/ru/docs/ssl.md). Эта страница сохраняется только в исторических целях.

Sisk SSL Proxy — это модуль, который обеспечивает HTTPS‑соединение для [ListeningHost](https://docs.sisk-framework.org/api/Sisk.Core.Http.ListeningHost.md) в Sisk и перенаправляет HTTPS‑сообщения в небезопасный HTTP‑контекст. Модуль был создан для обеспечения SSL‑соединения для сервиса, использующего [HttpListener](https://learn.microsoft.com/pt-br/dotnet/api/system.net.httplistener?view=net-8.0) для работы, который не поддерживает SSL.

Прокси работает внутри того же приложения и прослушивает сообщения HTTP/1.1, пересылая их тем же протоколом в Sisk. В настоящее время эта функция находится в экспериментальной стадии и может быть настолько нестабильной, что её не следует использовать в продакшене.

На данный момент SslProxy поддерживает почти все возможности HTTP/1.1, такие как keep-alive, chunked‑encoding, websockets и т.д. Для открытого соединения с SSL‑прокси создаётся TCP‑соединение с целевым сервером, и прокси перенаправляется на установленное соединение.

SslProxy можно использовать с HttpServer.CreateBuilder следующим образом:

```csharp
using var app = HttpServer.CreateBuilder(port: 5555)
    .UseRouter(r =>
    {
        r.MapGet("/", request =>
        {
            return new HttpResponse("Hello, world!");
        });
    })
    // добавить SSL в проект
    .UseSsl(
        sslListeningPort: 5567,
        new X509Certificate2(@".\ssl.pfx", password: "12345")
    )
    .Build();

app.Start();
```

Вы должны предоставить действительный SSL‑сертификат для прокси. Чтобы гарантировать, что сертификат принимается браузерами, не забудьте импортировать его в операционную систему, чтобы он функционировал корректно.
