172 похожих чатов

Всем привет, помогите пожалуйста отдебажить проблему, уже 3 день сижу,

идеи закончились

есть внешний домен, не относящийся к куберу
например: external.domain.com
и внешний домен, на котором крутится приложение: app.domain.com

дело в том, что при проксировании с external.domain.com на app.domain.com получаю 404
есть такой нжинкс конфиг на внешней проксе:
server {
listen 80;

server_name external.domain.com;

proxy_ssl_verify off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-M-D 2;
proxy_set_header X-M-D-Proto $http_x_forwarded_proto;
proxy_read_timeout 30;
proxy_cookie_domain t.domain.com $host;

location ~ ^/folder/click/?$ { proxy_pass https://app.domain.com/folder/click$is_args$args; resolver 8.8.8.8 8.8.4.4; }
location / {
proxy_intercept_errors on;
error_page 500 501 502 503 504 505 506 507 508 509 510 511 = @errors;
proxy_pass https://t.domain.com/;
}
}
при использовании такой урлы получаю 404:
https://external.domain.com/folder/click?cnv_id=1234567890123456789012345678901234567890&dph=1

ожидаю получить проксирование на app.domain.com и увидеть Success строку

хрень в том, что если напрямую запросить эту урлу на домене сервиса - работает
множество доменов которые работают с этим сервисом, который находится не в кубере(поднято два прода, один вне кубера, один в кубере) - работает

у меня стойкое ощущение что я что-то не учел в nginx ingress controller-е
его configmap такой на данный момент:
configmap:
data:
worker-processes: auto
max-worker-connections: "4096"
server-tokens: "false"
disable-access-log: "false"
use-gzip: "false"
hsts: "false"
# Work around for HTTP->HTTPS redirect not working when using the PROXY protocol:
# https://github.com/kubernetes/ingress-nginx/issues/2724
# It works by getting Nginx to listen on port 8080 on top of the standard 80 and 443,
# and making any requests sent to port 8080 be reponded do by this code, rather than
# the normal port 80 handling.
ssl-redirect: "false"
http-snippet: |
map true $pass_access_scheme {
default "https";
}
map true $pass_port {
default 443;
}

server {
listen 8080 proxy_protocol;
return 308 https://$host$request_uri;
}
use-forwarded-headers: "true"
compute-full-forwarded-for: "true"
enable-underscores-in-headers: "true"
use-proxy-protocol: "true"

2 ответов

14 просмотров

TL;DR

Могу предположить, что из-за директивы proxy_set_header host $host В ингресс приходи запрос на домен external.domain.com, который не слушается ингрессом. Попробуй в локейшин с проксипасом добавить proxy_set_header host app.domain.com

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта