Traefik: Ajax-вызов URL-адреса https, приводящий к смешанному контенту, ошибка небезопасного запроса XMLHttpRequest

#javascript #ajax #xmlhttprequest #lets-encrypt #traefik

#javascript #ajax #xmlhttprequest #позволяет зашифровать #traefik

Вопрос:

Я получаю эту ошибку для всех вызовов ajax в моем веб-приложении..

Mixed Content: The page at 'https://one.mydomain.com' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http://one.mydomain.com/api/get-all-agents/'. This request has been blocked; the content must be served over HTTPS.

Код также отправил запрос как абсолютный URL-адрес на https.

Все приложения выполняются в контейнерах docker. Запросы передаются через прокси-сервер Traefik.

Я пытался добавить обратную косую черту к запросу, но безрезультатно.

Код, выполняющий вызов

 var admin_base_url = "https://one.mydomain.com/

var url = admin_base_url   "api/get-all-agents/";

          $http.get(url).success(function(response){
              $scope.agents = response.agents;

          });
  

и

Вот мои конфигурации Traefik toml

 debug = false

logLevel = "ERROR"
defaultEntryPoints = ["https","http"]

[entryPoints]
  [entryPoints.http]
  address = ":80"
    [entryPoints.http.redirect]
    entryPoint = "https"
  [entryPoints.https]
  address = ":443"
  [entryPoints.https.tls]

[retry]

[docker]
endpoint = "unix:///var/run/docker.sock"
domain = "mydomain.com"
watch = true
exposedByDefault = false

[acme]
email = "user@mydomain.com"
acmeLogging = false
storage = "acme.json"
entryPoint = "https"
onHostRule = true
[acme.httpChallenge]
entryPoint = "http"

  

и мой файл Compose

 version: '3'

services:
  traefik:
    image: traefik:v1.7-alpine
    container_name: traefik
    restart: unless-stopped
    networks:
      - webgateway
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - /home/ec2-user/traefik/traefik.toml:/traefik.toml
networks:
  webgateway:
    driver: bridge
  

и у моего приложения compose есть этот ярлык

  labels:
      traefik.enable : "true"
      traefik.application.frontend.rule : "Host:one.mydomain.com"
      traefik.application-adminportal.port : "80"
    networks:
      - web
  

Я добавил X-Forwarded-Proto = "https" к ярлыкам приложений и все еще сталкиваюсь с той же проблемой.

Я просмотрел все ссылки, предложенные моделью вопроса, прежде чем задавать здесь.

Пожалуйста, помогите.

Обновить

Перенаправление браузера на HTTP с HTTPS, затем HTTP-запрос привел к ошибке введите описание изображения здесь

Комментарии:

1. Эта проблема была решена без внесения каких-либо изменений в настройки Traefik. Я использовал абсолютный URL-адрес для вызовов ajax и глобально разрешенных CORS.

2. Лучше опубликовать реальный ответ. Самостоятельные ответы на самом деле поощряются (хотя некоторые избиратели неправильно их понимают). Было бы неплохо опубликовать комментарий, подобный моему, здесь, в ответе, сразу после публикации ответа. Не включайте такую метаинформацию в сам ответ.