#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. Лучше опубликовать реальный ответ. Самостоятельные ответы на самом деле поощряются (хотя некоторые избиратели неправильно их понимают). Было бы неплохо опубликовать комментарий, подобный моему, здесь, в ответе, сразу после публикации ответа. Не включайте такую метаинформацию в сам ответ.