0
votes

I am trying to deploy a Blazor Server app using .NET5 to an Azure App Service via Azure DevOps.

The Blazor app runs and works correctly locally. The Azure DevOps pipeline appears to also be building and deploying correctly. If I use the console in the Azure portal I can see that the files I would expect are in the wwwroot folder (which I guess is correct?). In Configuration > General Settings I can see that the App Service is correctly configured for .NET 5. On the network side there are currently no access restrictions. I've also turned off all auth in the app for now just to make sure that wasn't having an impact.

When I try to access the site at https://my-app.azurewebsites.net (not the real url, just an example in case it's relevant) I get a white page with the following text: "You do not have permission to view this directory or page.". When I look in the Diagnostics dump from the Kudu page I can see more detail error pages which say 403.14 - Forbidden and the message "The Web server is configured to not list the contents of this directory.". If I look in App Insights for the times when I try to access it I can see requests with 403 response too (for some reason with url: http://localhost/). Unfortunately this error seems to cover a multitude of errors and so while I've found various sources with similar problems, none of the solutions I've found so far have had any positive impact.

EDIT: So I did some more digging and I think some files might be missing. I tried creating a new Blazor Server app and publishing it manually via Visual Studio. This worked and the only difference I've found from my app is that I have no web.config, hostingstart.html, or static css/js etc (from wwwroot). None of these files are in the output directory when I build for either my app or the test app I created so it looks like they must be getting added separately by something in the VS manual publish process and Azure DevOps publish step isn't doing it. Still not sure what the correct way to fix this is (or even entirely sure if any or all of this stuff is relevant).

Has anyone out there got any idea what I might be missing?

1
That path is correct as far as I can tell. It's certainly the location where the code isrcarrington
post screenshots that will make others to understand the issueSajeetharan
Follow my steps to troubleshoot, logs file will tell you more.Jason Pan

1 Answers

0
votes

So after working out what was going on here I was going to delete this but I figured possibly someone else will make the same mistake I did and this might help. Basically I'd copied another deployment pipeline for an Azure function app as the basis for the deployment pipeline for this and in that I just did a dotnet build and that's enough. However it seems for this kind of app to get wholesome output you need to run dotnet publish.