Page 1 of 1

Redirect с / на :8083/ и ошибкой SSL

Posted: Wed Sep 02, 2015 7:03 pm
by noxxer
Приветствую!

Настроил панель Vesta на vesta.domain.ru получил соответствующий сертификт SSL на домен.
Включил Redirect с http на https
он работает корректно, т.е. при входе на http://vesta.domain.ru, перенаправляет на https://vesta.domain.ru/login/

А вот далее проблема, при вводе логина
происходит переход на https://vesta.domain.ru:8083/list/user/, а т.к. ssl не поддерживает портов
такой адрес уже не доверенный.
Причем если в адресной строке убрать :8083, все продолжает работать до перехода напр. по логотипу или смене пользователя на страницу https://vesta.domain.ru с которой снова подцепляется порт.

Все настройки сделаны на уровне nginx в файле /etc/nginx/conf.d/myip.conf

server {
listen myip:80;
server_name vesta.domain.ru;
return 301 https://$server_name$request_uri;
}
server {
listen myip:443 ssl;
server_name vesta.domain.ru;

ssl_certificate /usr/local/vesta/ssl/certificate.crt;
ssl_certificate_key /usr/local/vesta/ssl/certificate.key;

location / {
proxy_pass https://myip:8083;
}
}

Пробовал различные варианты:
port_in_redirect off;
proxy_redirect off;
proxy_redirect https://myip:8083/ https://myip/;
они не срабатывают.

Пытался найти в коде панели прямое указание на переход по порту, тоже пока не нашел.

Есть идеи как исправить?

Re: Redirect с / на :8083/ и ошибкой SSL

Posted: Wed Sep 02, 2015 10:40 pm
by skurudo
1. добавьте сертификат к панели, просто скопируйте с обычного домена в /usr/local/vesta/nginx/conf/nginx.conf
ssl_certificate
ssl_certificate_key
2. на самом домене можно сделать переадресацию в панель а-ля Redirect 301 / https://domain.ru:8083/

Re: Redirect с / на :8083/ и ошибкой SSL

Posted: Thu Sep 03, 2015 7:03 am
by noxxer
skurudo wrote:1. добавьте сертификат к панели, просто скопируйте с обычного домена в /usr/local/vesta/nginx/conf/nginx.conf
ssl_certificate
ssl_certificate_key
Так это уже сделано, я установил свои сертификаты в /usr/local/vesta/ssl/ и на них указывают оба конфига.

И для адреса https://vesta.domain.ru:8083/list/user/ я получаю ошибку в браузере:
Ограничение на длину пути сертификата неверно. (Код ошибки: sec_error_path_len_constraint_invalid)

Т.е. проблема остается и она в том, что с корня / происходит редирект на адрес в котором появляется порт.
skurudo wrote: 2. на самом домене можно сделать переадресацию в панель а-ля Redirect 301 / https://domain.ru:8083/
Идея сократить переходы хорошая, но снова даёт порт в адресе :8083 чего пока не удалось избежать.

Может это с использованием mod_rewrite в .htaccess можно сделать? Не изящно, но так оставлять тоже не вариант.

Re: Redirect с / на :8083/ и ошибкой SSL

Posted: Thu Sep 03, 2015 7:50 am
by noxxer
"Hide port in Nginx reverse proxy redirection"
http://serverfault.com/questions/627305 ... edirection
:) "Most likely your application is doing this."

Может подскажите где посмотреть, в форме логина нигде напрямую порт не указан, хотя уже там происходит такой переход. Могу ошибаться, в таком анализе квалификации пока не хватает.

Re: Redirect с / на :8083/ и ошибкой SSL

Posted: Thu Sep 03, 2015 8:06 am
by noxxer
По видимому можно было бы решить вопрос с помощью proxy_redirect:
http://nginx.org/en/docs/http/ngx_http_ ... proxy_pass

Например так:
proxy_redirect https://myip:8083/list/user/ https://myip/list/user/;
(при необходимости еще 2-3 случая можно так же описать)

Но как там сказано:
" The off parameter cancels the effect of all proxy_redirect directives on the current level:
proxy_redirect off;"

Возникает вопрос, а proxy_redirect off; из /usr/local/vesta/nginx/conf/nginx.conf действует на /etc/nginx/conf.d/myip.conf?
и какой цели служит, т.е. можно ли его отключить?

Re: Redirect с / на :8083/ и ошибкой SSL

Posted: Thu Sep 03, 2015 9:02 am
by skurudo
Мне все-таки кажется, что на вашем домене vesta.domain.ru достаточно указать proxy_pass (посмотрите, он там не один) на vesta.domain.ru:8083 и переход должен проходить нормально.

Re: Redirect с / на :8083/ и ошибкой SSL

Posted: Thu Sep 03, 2015 9:48 am
by noxxer
Вот как сейчас проходит переход:

1 GET:
= запрос
URL запроса: https://vesta.domain.ru/
Метод запроса: GET
Код состояния: HTTP/1.1 302 Moved Temporarily
= Заголовки ответа Δ25мс
X-Powered-By: PHP/5.4.17
Transfer-Encoding: chunked
Server: nginx
Pragma: no-cache
Location: /list/user

2 GET:
= Запрос
URL запроса: https://vesta.domain.ru/list/user
Метод запроса: GET
Код состояния: HTTP/1.1 301 Moved Permanently
= Заголовки ответа Δ0мс
Server: nginx
Location: https://vesta.domain.ru:8083/list/user/

3 GET:
= Запрос
URL запроса: https://vesta.domain.ru:8083/list/user/
Метод запроса: GET
Код состояния: HTTP/1.1 407 Proxy Authentication Required
= Заголовки ответа Δ6мс
Proxy-Connection: close
Proxy-Authenticate: NEGOTIATE NTLM BASIC realm="BC_Auth_Service"
Pragma: no-cache

Может это поможет понять?

Re: Redirect с / на :8083/ и ошибкой SSL

Posted: Thu Sep 10, 2015 11:46 am
by noxxer
Проблема остается актуальной.
Прошу если будет найдено решение - опишите способ.

Возможно у кого-то не возникает порт при использовании доменного имени и SSL, опишите настройки.

Думаю еще попробовать отключить шифрование между nginx и apache для панели.