mirror of
https://github.com/jellyfin/jellyfin.git
synced 2025-08-06 22:27:07 +02:00
Merge eb79e93724
into 6d4efe6523
This commit is contained in:
commit
70e89e6ab1
@ -77,44 +77,49 @@ public static class WebHostBuilderExtensions
|
|||||||
WebHostBuilderContext builderContext,
|
WebHostBuilderContext builderContext,
|
||||||
KestrelServerOptions options)
|
KestrelServerOptions options)
|
||||||
{
|
{
|
||||||
bool flagged = false;
|
var flagged = false;
|
||||||
|
|
||||||
|
void ConfigureHttps(ListenOptions listenOptions)
|
||||||
|
{
|
||||||
|
if (!httpsPort.HasValue)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (builderContext.HostingEnvironment.IsDevelopment())
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
listenOptions.UseHttps();
|
||||||
|
}
|
||||||
|
catch (InvalidOperationException)
|
||||||
|
{
|
||||||
|
if (!flagged)
|
||||||
|
{
|
||||||
|
logger.LogWarning("Failed to listen to HTTPS using the ASP.NET Core HTTPS development certificate. Please ensure it has been installed and set as trusted");
|
||||||
|
flagged = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (certificate is null)
|
||||||
|
{
|
||||||
|
throw new InvalidOperationException("Cannot run jellyfin with https without setting a valid certificate.");
|
||||||
|
}
|
||||||
|
|
||||||
|
listenOptions.UseHttps(certificate);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
foreach (var netAdd in addresses)
|
foreach (var netAdd in addresses)
|
||||||
{
|
{
|
||||||
var address = netAdd.Address;
|
var address = netAdd.Address;
|
||||||
logger.LogInformation("Kestrel is listening on {Address}", address.Equals(IPAddress.IPv6Any) ? "all interfaces" : address);
|
logger.LogInformation("Kestrel is listening on {Address}", address.Equals(IPAddress.IPv6Any) ? "all interfaces" : address);
|
||||||
options.Listen(netAdd.Address, httpPort);
|
options.Listen(address, httpPort);
|
||||||
if (httpsPort.HasValue)
|
if (httpsPort.HasValue)
|
||||||
{
|
{
|
||||||
if (builderContext.HostingEnvironment.IsDevelopment())
|
options.Listen(address, httpsPort.Value, ConfigureHttps);
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
options.Listen(
|
|
||||||
address,
|
|
||||||
httpsPort.Value,
|
|
||||||
listenOptions => listenOptions.UseHttps());
|
|
||||||
}
|
|
||||||
catch (InvalidOperationException)
|
|
||||||
{
|
|
||||||
if (!flagged)
|
|
||||||
{
|
|
||||||
logger.LogWarning("Failed to listen to HTTPS using the ASP.NET Core HTTPS development certificate. Please ensure it has been installed and set as trusted");
|
|
||||||
flagged = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if (certificate is null)
|
|
||||||
{
|
|
||||||
throw new InvalidOperationException("Cannot run jellyfin with https without setting a valid certificate.");
|
|
||||||
}
|
|
||||||
|
|
||||||
options.Listen(
|
|
||||||
address,
|
|
||||||
httpsPort.Value,
|
|
||||||
listenOptions => listenOptions.UseHttps(certificate));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -129,8 +134,9 @@ public static class WebHostBuilderExtensions
|
|||||||
File.Delete(socketPath);
|
File.Delete(socketPath);
|
||||||
}
|
}
|
||||||
|
|
||||||
options.ListenUnixSocket(socketPath);
|
options.ListenUnixSocket(socketPath, ConfigureHttps);
|
||||||
logger.LogInformation("Kestrel listening to unix socket {SocketPath}", socketPath);
|
|
||||||
|
logger.LogInformation("Kestrel listening on unix socket {SocketPath}", socketPath);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user