Знайшов де знаходиться причина
На символ "_" не звертайте увагу
web/calls.pm
$ses::http_prefix = $ENV{HTTPS} || $ENV{HTTP_X_FORWARDED_PROTOCOL} =~ /h_ttps/i? 'h_ttps://' : 'h_ttp://';
Якщо в рядку 'http' змінити на 'https' то все ок починає працювати
$ses::http_prefix = $ENV{HTTPS} || $ENV{HTTP_X_FORWARDED_PROTOCOL} =~ /h_ttps/i? 'h_ttps://' : 'h_ttps://';
Apache на порті 81 і на фронті nginx прокся на портах 80 і 443 з ssl сертифікатами. Обидва в докері.
В nginx прописано:
location / {
proxy_pass h_ttp://apache:81;
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;
}
Схоже HTTP_X_FORWARDED_PROTOCOL не береться з веб сервера
Також пробував задавати різні змінні оточення в контейнері з apache, але не спрацьовує:
HTTP_X_FORWARDED_PROTOCOL="https"
HTTP_X_FORWARDED_PROTOCOL="h_ttps://"
HTTPS="1"
HTTPS="h_ttps://"
Не вийшло вирішити без зміни web/calls.pm