如何让nginx只响应一个域?

我对nginx很新,我把我的rails应用程序托pipe在nginx + passenger上。 我希望我的网站只能访问一个域名。 所以我设置我的nginx conf如下:

server { listen 80; server_name mydomain.com www.mydomain.com; root /var/deploy/myapp/current/public; passenger_enabled on; location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ { expires 1y; add_header Cache-Control public; } } 

我指定了server_name指令,但它仍然回答任何指向此IP的内容,我可以在access.log中看到它对其他域名的回应。

有什么我做错了吗?

除了nginx中的当前版本之外,还可以创build一个新的虚拟主机,以捕获除了一个域的其他所有域以外的其他域。 或者你需要为你的域名获得一个专用的IP地址。