You have a duplicate listen directive with same IP address and same port in both server blocks. I doubt that is a valid configuration. Have you checked nginx -t and error logs on reload/start?
I suggest you have a server block listening for HTTP on port 80 and another block reponsible for HTTPS traffic listening on 443, and then redirecting the HTTP block to the HTTPS one. --- *B. R.* On Fri, Mar 20, 2015 at 7:01 PM, David Benfell < [email protected]> wrote: > Hi all, > > I am attempting to strip www. and force SSL. Here are the blocks I'm > using: > > server { > listen 50.250.218.168:80; > listen 50.250.218.168:443 ssl; > listen [2001:470:67:2b5::10]:80; > listen [2001:470:67:2b5::10]:443 ssl; > > server_name www.disunitedstates.org; > include ssl_common; > > access_log > /var/log/nginx/disunitedstates.org/access.log; > error_log > /var/log/nginx/disunitedstates.org/error.log; > > return 301 https://disunitedstates.org$request_uri; > } > > server { > listen 50.250.218.168:80; > listen [2001:470:67:2b5::10]:80; > > server_name disunitedstates.org; > > access_log > /var/log/nginx/disunitedstates.org/access.log; > error_log > /var/log/nginx/disunitedstates.org/error.log; > > return 301 https://disunitedstates.org$request_uri; > } > > I have a separate server block for actually serving the site. > > But when one tries to access http://disunitedstates.org, one gets a > 400 error, "The plain HTTP request was sent to HTTPS port." The > information I'm finding out on the web about this is confusing and > contradictory. > > How should this be done? > > Thanks! > -- > David Benfell <[email protected]> > See https://parts-unknown.org/node/2 if you don't understand the > attachment. > > _______________________________________________ > nginx mailing list > [email protected] > http://mailman.nginx.org/mailman/listinfo/nginx >
_______________________________________________ nginx mailing list [email protected] http://mailman.nginx.org/mailman/listinfo/nginx
