Настройка Nginx:
map $scheme $port { default 80; http 80; https 8443; }
server {
listen 80;
listen 443 ssl;
server_name _;
ssl_certificate /etc/nginx/ssl/chained-cert.crt;
ssl_certificate_key /etc/nginx/ssl/sslkey.key;
ssl_protocols SSLv2 SSLv3 TLSv1 TLSv1.1 TLSv1.2;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
location / {
proxy_pass http://127.0.0.1:$port;
}
}
Настройка tomcat:
в server.xml
добавить:
<Connector port="8443"
protocol="HTTP/1.1"
scheme="https"
proxyPort="443"
secure="true" />
Для отображения в логе реальных IP добавить:
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log."
suffix=".txt"
remoteIpHeader="X-Forwarded-For" requestAttributesEnabled="true" internalProxies="127\.0\.0\.1"
pattern=" %{X-Forwarded-For}i %l %u %t "%r" %s %b" />
Переходим в каталог ~/pentaho-solutions/system
Находим файл server.properties и переименовать http в https
Оригинал статьи:
http://www.valynkin.ru/tomcat-behind-ssl-nginx-reverse-proxy.html