Open Closed

How to host multiple sites on single Azure web app for Containers using docker compose #9968


User avatar
0
devchase321 created

How to Deploy Multiple Applications on a Single Azure App Service Using Web App for Containers and Expose Multiple Endpoints on the Same Domain

  • https://www.example.com → Web Public
  • https://www.example.com/admin → Blazor Admin
  • https://www.example.com/api → API
  • https://www.example.com/auth → AuthServer

We want to avoid using multiple App Services or subdomains if possible and would like to maintain the same HTTPS certificate for all endpoints.

Markdown supported.
Copy, paste, or drag & drop images and files (max 100 MB per file, 100 MB total per post)

32 Answer(s)
  • User Avatar
    0
    maliming created
    Support Team Fullstack Developer

    Hi

    You can add it and try again.

    If still get 500 error please share the logs.txt files again.

    Thanks.

    Markdown supported.
    Copy, paste, or drag & drop images and files (max 100 MB per file, 100 MB total per post)
  • User Avatar
    0
    devchase321 created

    [maliming] said: Hi

    You can add it and try again.

    If still get 500 error please share the logs.txt files again.

    Thanks.

    Can I add it in the auth or admin module?

    Markdown supported.
    Copy, paste, or drag & drop images and files (max 100 MB per file, 100 MB total per post)
  • User Avatar
    0
    maliming created
    Support Team Fullstack Developer

    Hi

    Auth website. If not working, add it to all websites.

    Thanks.

    Markdown supported.
    Copy, paste, or drag & drop images and files (max 100 MB per file, 100 MB total per post)
  • User Avatar
    0
    devchase321 created

    [maliming] said: Hi

    You can add it and try again.

    If still get 500 error please share the logs.txt files again.

    Thanks.

    Hi

    I have sent logs file in the mail.

    Thanks

    Markdown supported.
    Copy, paste, or drag & drop images and files (max 100 MB per file, 100 MB total per post)
  • User Avatar
    0
    maliming created
    Support Team Fullstack Developer

    hi

    The new error:

    Client validation failed because 'http://emeraldhealthcare.us/signin-oidc' was not a valid redirect_uri for Emerald_Web_Public_Prod.
    

    Have you added ctx.Request.Scheme = "https"; to the admin website?

    app.Use(async (ctx, next) => 
    { 
        ctx.Request.Scheme = "https"; 
        await next(); 
    });      
    

    Additionally, it seems there is an issue with your reverse proxy configuration. The browser requested HTTPS, but the URL is still HTTP.

    Thanks.

    Markdown supported.
    Copy, paste, or drag & drop images and files (max 100 MB per file, 100 MB total per post)
  • User Avatar
    0
    devchase321 created

    [maliming] said: hi

    The new error:

    Client validation failed because 'http://emeraldhealthcare.us/signin-oidc' was not a valid redirect_uri for Emerald_Web_Public_Prod. 
    

    Have you added ctx.Request.Scheme = "https"; to the admin website?

    app.Use(async (ctx, next) =>  
    {  
        ctx.Request.Scheme = "https";  
        await next();  
    });       
    

    Additionally, it seems there is an issue with your reverse proxy configuration. The browser requested HTTPS, but the URL is still HTTP.

    Thanks.

    Hi Yes, I have added it on the admin website, and in the database, it is set to HTTPS.

    Thanks

    Markdown supported.
    Copy, paste, or drag & drop images and files (max 100 MB per file, 100 MB total per post)
  • User Avatar
    0
    maliming created
    Support Team Fullstack Developer

    hi

    Try to change your oidc ProtocolMessage as below in production environment.

    .AddAbpOpenIdConnect("oidc", options =>
    {
        //options.
    
        options.Events.OnRedirectToIdentityProvider = redirectContext =>
        {
            redirectContext.ProtocolMessage.RedirectUri = "https://emeraldhealthcare.us/signin-oidc";
            return Task.CompletedTask;
        };
        options.Events.OnRedirectToIdentityProviderForSignOut = redirectContext =>
        {
            redirectContext.ProtocolMessage.PostLogoutRedirectUri = "https://emeraldhealthcare.us/signout-callback-oidc";
            return Task.CompletedTask;
        };
    })
    
    Markdown supported.
    Copy, paste, or drag & drop images and files (max 100 MB per file, 100 MB total per post)
Boost Your Development
ABP Live Training
Packages
See Trainings
Mastering ABP Framework Book
The Official Guide
Mastering
ABP Framework
Learn More
Mastering ABP Framework Book
Made with ❤️ on ABP v10.8.0-preview. Updated on September 16, 2026, 14:50
1
ABP Assistant
🔐 You need to be logged in to use the chatbot. Please log in first.