Accessing the https://xx.xx.xx.xx (the IP address) uses the mydomain.com
host instead of using the default, which should reject the request. The
browser is sending the host as “xx.xx.xx.xx”. This should not match the mydomain.com file. So why is it it not using the right server?
I’ve also tried leaving server name blank and adding “ssl” after 443 in
the
listen directive, but it still ignores the default server and uses the domain.com one instead.
1°) Ensure the config files are all included (starting with main
nginx.conf
files, then following all ‘include’ logic). The ‘sites-available’ logic
is
due to some distributions packaging and is not there in the official
nginx
one.
Usually this is OK, but checking cannot hurt. :o)
2°) Ensure your configuration is loaded, ie the syntax is correct and
nginx is actually applying it.
use nginx -t to check the available config does not contain errors
send SIGHUP to nginx master to reload the configuration (and check
logs
for messages regarding it)
… or use the probably available ‘reload’ command from your system
management script which does both steps, knowing what you are doing
3°) Ensure the reply you see in your client is the one sent by the
server
(ie take care about any intermediate cache).
One way of effectively doing that is monitoring the access.log file
(which
exists in the default nginx configuration http://trac.nginx.org/nginx/browser/nginx/conf/nginx.conf, though
commented).
Another (complementary) way of doing the same is using cURL on the
command-line, querying your server on the right interface
If you are still experiencing difficulties, please provide details about
your problem and your attempts (and their result aswell) to solve it.
B. R.
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.