Я хочу перенаправить пользователя, когда он заходит на https, на http-версию моего веб-сайта, которая размещена в рое Docker.
Я пытаюсь сделать это с помощью ngnix, однако используемая мной установка не работает. Я создал новое веб-приложение Core 2.0, чтобы попытаться заставить его работать в самом простом из возможных контекстов. В дополнение к веб-приложению у меня также есть Dockerfile:
FROM microsoft/aspnetcore-build:2.0 AS build-env
WORKDIR /app
# Copy csproj and restore as distinct layers
COPY *.csproj ./
RUN dotnet restore
# Copy everything else and build
COPY . ./
RUN dotnet publish -c Release -o out
# Build nginx image to redirect http to https
FROM nginx:alpine
EXPOSE 80
COPY nginx.conf /etc/nginx/nginx.conf
# Build runtime image
FROM microsoft/aspnetcore:2.0
WORKDIR /app
COPY --from=build-env /app/out .
ENTRYPOINT ["dotnet", "RedirectService.dll"]
и мой файл nginx:
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
return 301 https://www.google.co.uk;
}
После создания моего изображения я запускаю его с docker run -p 8006:80 redirectservice
. Что я ожидаю, так это то, что он перенаправит меня в Google, когда я перейду на http://localhost:8006
, однако перенаправление не происходит.
Может кто-нибудь увидеть что-то, что я делаю не так? Любая помощь будет высоко ценится.