diff --git a/nginx/nginx.conf b/nginx/nginx.conf index db46615..46087c5 100644 --- a/nginx/nginx.conf +++ b/nginx/nginx.conf @@ -87,14 +87,28 @@ http { # You should use virtual hosts and move these `server` blocks in their own # file inside a `sites-available` folder. Then symink back to `sites-enabled` # to activate. + + # www to non-www redirect -- duplicate content is BAD: + # https://github.com/h5bp/html5-boilerplate/blob/5370479476dceae7cc3ea105946536d6bc0ee468/.htaccess#L362 + # Choose between www and non-www, listen on the *wrong* one and redirect to + # the right one -- http://wiki.nginx.org/Pitfalls#Server_Name + server { + # don't forget to tell on which port this server listens + listen 80; + # listen on the www host + server_name www.example.com + # and redirect to the non-www host (declared below) + return 301 $scheme://example.com$request_uri; + } + server { # listen 80 default_server deferred; # for Linux # listen 80 default_server accept_filter=httpready; # for FreeBSD listen 80 default_server; - # e.g. "localhost" to accept all connections, or "www.example.com" - # to handle the requests for "example.com" (and www.example.com) - # server_name www.example.com; + # listen on the non-www host -- the www-host is declared above and redirects + # here + server_name example.com; # Path for static files root /sites/example.com/public;