Blazor WebApp发布到Docker+Nginx后出现404错误及端口异常排查
.NET8 Blazor WebApp搭配Nginx部署后出现404 Not Found错误
此前使用.NET7搭建的Blazor WASM搭配Nginx运行正常,但升级到.NET8后出现问题。为测试新建了模板Blazor WebApp,发布后仍出现404 Not Found错误。
Dockerfile配置
FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base WORKDIR /app EXPOSE 80 EXPOSE 443 FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build WORKDIR /src COPY ["BlazorStandAlone8.csproj", "./"] RUN dotnet restore "BlazorStandAlone8.csproj" COPY . . WORKDIR "/src/" RUN dotnet build "BlazorStandAlone8.csproj" -c Release -o /app/build FROM build AS publish RUN dotnet publish "BlazorStandAlone8.csproj" -c Release -o /app/publish FROM nginx:alpine WORKDIR /user/share/nginx/html COPY --from=publish /app/publish/wwwroot . COPY /nginx.conf /etc/nginx/nginx.conf
nginx.conf配置
events { } http { include mime.types; types { application/wasm; } server { listen 80; index index.html; location / { root /user/share/nginx/html; try_files $uri $uri/ /index.html =404; } } }
使用命令docker run -p 5000:80 blazorsa8test运行容器,尝试调整端口、Dockerfile配置,检查容器内文件均无异常。
更新:已排除Blazor和Nginx问题,发现5000端口存在异常,更换为5005端口后运行正常,怀疑本地端口冲突,正在进一步排查。
内容的提问来源于stack exchange,提问作者Nikita Belov
相关产品推荐
相关产品推荐

