Мы работаем с другой компанией, которая использует продукт SAP, который им не предоставляется. Они хотят, чтобы мы добавили его в iframe на нашем сайте, однако сервер отправляет заголовок X-FRAME-OPTIONS SAMEORIGIN
.
Мы попытались просто прокси-сервер на нашем сервере Nginx, используя:
server {
listen 80;
server_name othercompany.ourdomain.tld;
resolver 8.8.8.8;
access_log /var/log/nginx/othercompany.access.log;
error_log /var/log/nginx/othercompany.error.log;
location / {
proxy_set_header Host subdomain.othercompany.tld;
proxy_pass https://Host subdomain.othercompany.tld;
proxy_set_header X-Forwarded-Proto https;
proxy_intercept_errors on;
}
}
Когда я заменяю subdomain.othercompany.tld
на случайный домен (либо тот, который мы контролируем, либо совершенно не связанный, например, веб-сайт газеты), он работает нормально. Однако, когда я переключаю его на свой домен, Nginx возвращает перенаправление 301 на текущую страницу (например, если мы введем othercompany.ourdomain.tld
, будет перенаправление 301 на этот URL-адрес, пока браузер не примет решение, куда куда перенаправить и показатьошибка.
Пример. Accesslog:
[...]
172.22.0.4 - - [16/Oct/2019:19:51:54 +0000] "GET / HTTP/1.1" 301 0 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:69.0) Gecko/20100101 Firefox/69.0"
172.22.0.4 - - [16/Oct/2019:19:51:54 +0000] "GET / HTTP/1.1" 301 0 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:69.0) Gecko/20100101 Firefox/69.0"
172.22.0.4 - - [16/Oct/2019:19:51:54 +0000] "GET / HTTP/1.1" 301 0 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:69.0) Gecko/20100101 Firefox/69.0"
172.22.0.4 - - [16/Oct/2019:19:51:54 +0000] "GET / HTTP/1.1" 301 0 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:69.0) Gecko/20100101 Firefox/69.0"
Вопрос: есть ли что-то не так с конфигурацией Nginx? Если нет, то что может быть причиной этого? Мне нужно что-то вроде Fiddlerили OWASP Zap для этого (швы как излишки и что-то, с чем Nginx должен справиться, не так ли)?