NGINX проксирует по https soap-запросы в простой http:
server {
listen 443 ssl;
server_name mydomain.ru;
auth_basic "Private Property";
auth_basic_user_file /etc/nginx/.htpasswd;
ssl_certificate "/etc/nginx/ssl/mykey.crt";
ssl_certificate_key "/etc/nginx/ssl/privatekey.txt";
set_real_ip_from 10.0.68.0/24;
real_ip_header X-Forwarded-For;
real_ip_recursive on;
proxy_set_header Host $host;
# adapter.sqldb
location /cxf/sqldbadapter/TXLife {
proxy_pass<>http://s-esb-1:18801;
}
При запросе WSDL https://mydomain.ru:8443/cxf/sqldbadapter/TXLife?wsdl
получаем в ответе строку <soap:address location=" http://s-esb-1:18801/cxf/sqldbadapter/TXLife"/ >
а нужно тот же, адрес, протокол и порт, что и в запросе. Пока решил вопрос фильтром:
sub_filter http://$host https://$host:8443;
sub_filter_once on;
sub_filter_types text/xml;
А как правильнее вернуть тот же адрес, что и в запрос?
--
Pavel Rubtsov
Отправлено из Почты Mail.ru_______________________________________________
nginx-ru mailing list -- nginx-ru@nginx.org
To unsubscribe send an email to nginx-ru-leave@nginx.org