| From | Sent On | Attachments |
|---|---|---|
| zhijianpeng | Apr 27, 2009 6:50 am | |
| Igor Sysoev | Apr 27, 2009 6:56 am | |
| zhijianpeng | Apr 27, 2009 7:14 pm | |
| Igor Sysoev | Apr 27, 2009 9:32 pm |
| Subject: | Re: some question about server listen | |
|---|---|---|
| From: | Igor Sysoev (is...@rambler-co.ru) | |
| Date: | Apr 27, 2009 9:32:56 pm | |
| List: | ru.sysoev.nginx | |
On Mon, Apr 27, 2009 at 10:14:41PM -0400, zhijianpeng wrote:
Igor Sysoev Wrote:
-------------------------------------------------------
On Mon, Apr 27, 2009 at 09:50:27AM -0400, zhijianpeng wrote:
========my nginx.conf=========== server {
listen 10.1.1.1:80; server_name www.test1.com; root /opt/test1; }
server {
listen 80; server_name www.test2.com; root /opt/test2; }
========my nginx.conf=========== I found that server www.test2.com not listen on
10.1.1.1 ,but only listen on 127.0.0.1,why ?
Probably, you mistook: in this case nginx listen on *:80 only.
If you want to bind() to an address, then you should set listen 10.1.1.1:80 default bind;
-- Igor Sysoev http://sysoev.ru/en/
Yes,I saw that nginx listen on 0.0.0.0:80 but when I use : curl -v -H "Host: www.test2.com" http://10.1.1.1/index.html I get the result of www.test1.com/index.html,
and use curl -v -H "Host: www.test2.com" http://127.0.0.1/index.html then get the result of www.test2.com/index.html
In this case ,does "listen *:80" means this virtual_server only bind to the
ip address not used by any other virtual_server?
Although nginx listen on *:80, nevertheless it tests an address where a request was sent to, as if nginx was bind() to the address. It emulates usual socket bind() behaviour.
-- Igor Sysoev http://sysoev.ru/en/





