mirror of
https://github.com/btcpayserver/btcpayserver.git
synced 2025-01-19 05:33:31 +01:00
Allow bind and port for http too (#4031)
This commit is contained in:
parent
6c45ccc73d
commit
a51c9d2b2d
@ -167,40 +167,53 @@ namespace BTCPayServer.Hosting
|
||||
bool hasCertPath = !String.IsNullOrEmpty(httpsCertificateFilePath);
|
||||
services.Configure<KestrelServerOptions>(kestrel =>
|
||||
{
|
||||
kestrel.Limits.MaxRequestLineSize = 8_192 * 10 * 5; // Around 500K, transactions passed in URI should not be bigger than this
|
||||
});
|
||||
kestrel.Limits.MaxRequestLineSize =
|
||||
8_192 * 10 * 5; // Around 500K, transactions passed in URI should not be bigger than this
|
||||
|
||||
var bindAddress = Configuration.GetOrDefault<IPAddress>("bind", null);
|
||||
int? bindPort = Configuration.GetOrDefault("port", -1);
|
||||
bindPort = bindPort == -1 ? null : bindPort;
|
||||
if (hasCertPath || useDefaultCertificate)
|
||||
{
|
||||
var bindAddress = Configuration.GetOrDefault<IPAddress>("bind", IPAddress.Any);
|
||||
int bindPort = Configuration.GetOrDefault<int>("port", 443);
|
||||
|
||||
services.Configure<KestrelServerOptions>(kestrel =>
|
||||
{
|
||||
bindAddress ??= IPAddress.Any;
|
||||
bindPort ??= 443;
|
||||
if (hasCertPath && !File.Exists(httpsCertificateFilePath))
|
||||
{
|
||||
// Note that by design this is a fatal error condition that will cause the process to exit.
|
||||
throw new ConfigException($"The https certificate file could not be found at {httpsCertificateFilePath}.");
|
||||
}
|
||||
if (hasCertPath && useDefaultCertificate)
|
||||
{
|
||||
throw new ConfigException($"Conflicting settings: if HttpsUseDefaultCertificate is true, HttpsCertificateFilePath should not be used");
|
||||
throw new ConfigException(
|
||||
$"The https certificate file could not be found at {httpsCertificateFilePath}.");
|
||||
}
|
||||
|
||||
kestrel.Listen(bindAddress, bindPort, l =>
|
||||
if (hasCertPath && useDefaultCertificate)
|
||||
{
|
||||
throw new ConfigException(
|
||||
$"Conflicting settings: if HttpsUseDefaultCertificate is true, HttpsCertificateFilePath should not be used");
|
||||
}
|
||||
}
|
||||
|
||||
if (bindAddress is not null && bindPort is not null)
|
||||
{
|
||||
|
||||
kestrel.Listen(bindAddress, bindPort.Value, l =>
|
||||
{
|
||||
if (hasCertPath || useDefaultCertificate)
|
||||
{
|
||||
if (hasCertPath)
|
||||
{
|
||||
Logs.Configuration.LogInformation($"Using HTTPS with the certificate located in {httpsCertificateFilePath}.");
|
||||
l.UseHttps(httpsCertificateFilePath, Configuration.GetOrDefault<string>("HttpsCertificateFilePassword", null));
|
||||
Logs.Configuration.LogInformation(
|
||||
$"Using HTTPS with the certificate located in {httpsCertificateFilePath}.");
|
||||
l.UseHttps(httpsCertificateFilePath,
|
||||
Configuration.GetOrDefault<string>("HttpsCertificateFilePassword", null));
|
||||
}
|
||||
else
|
||||
{
|
||||
Logs.Configuration.LogInformation($"Using HTTPS with the default certificate");
|
||||
l.UseHttps();
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
public void Configure(
|
||||
IApplicationBuilder app,
|
||||
|
@ -32,7 +32,7 @@
|
||||
"BTCPAY_CHEATMODE": "true",
|
||||
"BTCPAY_EXPLORERPOSTGRES": "User ID=postgres;Include Error Detail=true;Host=127.0.0.1;Port=39372;Database=nbxplorer"
|
||||
},
|
||||
"applicationUrl": "http://0.0.0.0:14142/"
|
||||
"applicationUrl": "http://localhost:14142/"
|
||||
},
|
||||
"Bitcoin-HTTPS": {
|
||||
"commandName": "Project",
|
||||
@ -70,7 +70,7 @@
|
||||
"BTCPAY_CHEATMODE": "true",
|
||||
"BTCPAY_EXPLORERPOSTGRES": "User ID=postgres;Include Error Detail=true;Host=127.0.0.1;Port=39372;Database=nbxplorer"
|
||||
},
|
||||
"applicationUrl": "https://0.0.0.0:14142/"
|
||||
"applicationUrl": "https://localhost:14142/"
|
||||
},
|
||||
"Altcoins-HTTPS": {
|
||||
"commandName": "Project",
|
||||
@ -110,7 +110,7 @@
|
||||
"BTCPAY_CHEATMODE": "true",
|
||||
"BTCPAY_EXPLORERPOSTGRES": "User ID=postgres;Include Error Detail=true;Host=127.0.0.1;Port=39372;Database=nbxplorer"
|
||||
},
|
||||
"applicationUrl": "https://0.0.0.0:14142/"
|
||||
"applicationUrl": "https://localhost:14142/"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user