diff --git a/apps/server/AliasVault.Api/Program.cs b/apps/server/AliasVault.Api/Program.cs index 1b557e976..365d51cb6 100644 --- a/apps/server/AliasVault.Api/Program.cs +++ b/apps/server/AliasVault.Api/Program.cs @@ -41,7 +41,10 @@ var config = new Config(); var publicRegistrationEnabled = Environment.GetEnvironmentVariable("PUBLIC_REGISTRATION_ENABLED") ?? "false"; config.PublicRegistrationEnabled = bool.Parse(publicRegistrationEnabled); -var privateEmailDomains = Environment.GetEnvironmentVariable("PRIVATE_EMAIL_DOMAINS")?.Split(",").Select(d => d.Trim()); +var privateEmailDomains = Environment.GetEnvironmentVariable("PRIVATE_EMAIL_DOMAINS")? + .Split(",", StringSplitOptions.RemoveEmptyEntries) + .Select(d => d.Trim()) + .Where(d => !string.IsNullOrWhiteSpace(d)); config.PrivateEmailDomains = privateEmailDomains?.ToList() ?? new List(); var ipLoggingEnabled = Environment.GetEnvironmentVariable("IP_LOGGING_ENABLED") ?? "false"; diff --git a/apps/server/AliasVault.Client/Program.cs b/apps/server/AliasVault.Client/Program.cs index bcd755141..a03a2412e 100644 --- a/apps/server/AliasVault.Client/Program.cs +++ b/apps/server/AliasVault.Client/Program.cs @@ -24,12 +24,6 @@ builder.Configuration.AddJsonFile($"appsettings.{builder.HostEnvironment.Environ var config = new Config(); builder.Configuration.Bind(config); - -if (config.PrivateEmailDomains == null || config.PrivateEmailDomains.Count == 0) -{ - throw new KeyNotFoundException("PrivateEmailDomains is not set in the configuration."); -} - builder.Services.AddSingleton(config); // Add localization services diff --git a/apps/server/AliasVault.Client/entrypoint.sh b/apps/server/AliasVault.Client/entrypoint.sh index 5290bd323..8f94be757 100755 --- a/apps/server/AliasVault.Client/entrypoint.sh +++ b/apps/server/AliasVault.Client/entrypoint.sh @@ -29,8 +29,13 @@ fi # The app will use a relative URL instead (base url + "/api/" which is the default for the Docker setup). sed -i "s|\"ApiUrl\": \"http://localhost:5092\",||g" /usr/share/nginx/html/appsettings.json -# Convert comma-separated list to JSON array -json_array=$(echo $PRIVATE_EMAIL_DOMAINS | awk '{split($0,a,","); printf "["; for(i=1;i<=length(a);i++) {printf "\"%s\"", a[i]; if(i