Nginx redirect to https need page refresh -
i have through tutorials on internet redirect http -> https. have got worked out, doesn't work 100% correctly
my environment on centos 6.5 (right set in 1 server in development mode):
1.) 1 nginx (v 1.8.0) load balancer (running on port 443 , 80)
2.) 2 node.js express.js web servers (running on port 3000)
3.) 1 mongodb database (running on port 27017)
what got far
i trying redirect user http https on load balancer.
i want node.js render "hello nodes" ( set )
what went wrong
when enter https://my.domain.com , render "hello nodes" ( work correctly )
but when enter http://my.domain.com , render "welcome nginx"; however, when refresh browser render "hello nodes"
it seems have refresh browser in order redirected https.
i want redirect https right after enter http://my.domain.com without needs of page refresh
thank :)
here code in /etc/nginx/conf.d/default.conf on nginx v1.8.0
server { listen 443 ssl; server_name localhost; ssl_certificate /etc/nginx/ssl/ffml-cert.pem; ssl_certificate_key /etc/nginx/ssl/ffml-key.pem; ssl on; ssl_session_cache builtin:1000 shared:ssl:10m; ssl_protocols tlsv1 tlsv1.1 tlsv1.2; ssl_ciphers high:!anull:!enull:!export:!camellia:!des:!md5:!psk:!rc4; ssl_prefer_server_ciphers on; location / { 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; # fix “it appears reverse proxy set broken" error. proxy_pass http://localhost:3000; proxy_read_timeout 90; proxy_redirect http://localhost:3000; } } server { listen 80; return 301 https://$host$request_uri?; }
Comments
Post a Comment