nginx_nginx多虚拟主机配置

[ 2010-12-09 21:17:57 | 作者: admin ]
字号: | |
利用虚拟主机技术,可以把一台真正的主机分成许多"虚拟"的主机,每一台虚拟主机都
具有独立的域名和IP地址,具有完整的Internet服务器(www, FTP,email)功能。 虚拟
主机之间完全独立,在外界看来,每一台虚拟主机和一台独立的主机完全一样。效果一样但
费用却大不一样了。由于多台 虚拟主机 共享一台真实主机的资源,每个 虚拟主机用户承受
的硬件费用、网络维护费用、通信线路的费用均大幅度降低,Internet真正成为人人用得起
的网络!
虚拟主机共分为三种:基于IP的虚拟主机,基于端口的虚拟主机和基于名称的虚拟主
机。前两种由于受到成本和客户使用习惯的限制,相对使用的没有基于名称的虚拟主机多,
以下我们介绍一下三种虚拟主机的配置。
Nginx基于名称的虚拟主机配置:
server {
listen 80;
server_name www.example.com;
...
}
server {
listen 80;
server_name www.test.com;
...
}
server {
listen 80 default;
...
}
上述配置中, 定义了三个虚拟主机。前两个server, 通过域名
“www.example.com” 和 “www.test.com” 可以分别访问正确的网站。如果浏览器直接
通过IP地址或者其他指向这台机器的域名访问, 那么访问到的是第三个server配置。第三
个server为一个默认配置, 请注意它没有“server_name”指令, 并且“listen”指令包含
一个“default”关键字。
Nginx基于IP的虚拟主机
[root@server nginx]# vi /usr/local/nginx/conf/nginx.conf
server {
listen 10.0.0.88:80;
root 88.com;
index index.html;
}
server {
listen 10.0.0.87:80;
root 87.com;
index index.html;
}
[root@server nginx]# ifconfig eth0:0 10.0.0.88
[root@server nginx]# ifconfig eth0:1 10.0.0.87
[root@server nginx]# mkdir /usr/local/nginx/88.com
[root@server nginx]# echo 'I am your father' > /usr/local/nginx/88.com/index.html
[root@server nginx]# mkdir /usr/local/nginx/87.com
[root@server nginx]# echo 'this is 87.com' > /usr/local/nginx/87.com/index.html
以上配置了两台虚拟主机,一台IP为10.0.0.88,另一台为10.0.0.87。它们都监听80
端口。根据访问的IP地址不同,返回不同网站内容。
Nginx基于端口的虚拟主机
[root@server nginx]# vi /usr/local/nginx/conf/nginx.conf
server {
listen 80;
root 80.com;
}
server {
listen 8080;
root 8080.com;
}
[root@server nginx]# mkdir /usr/local/nginx/80.com
[root@server nginx]# mkdir /usr/local/nginx/8080.com
[root@server nginx]# echo 'this is 80.com' > /usr/local/nginx/80.com/index.html
[root@server nginx]# echo 'this is 8080.com' > /usr/local/nginx/8080.com/index.html
以上配置了两台虚拟主机,一台使用相同IP。一台使用80端口,另一台使用8080端
口。访问8080端口时需要在URL后加上 :8080 。
[最后修改由 admin, 于 2010-12-09 21:30:45]
评论Feed 评论Feed: http://blog.xg98.com/feed.asp?q=comment&id=1580

这篇日志没有评论。

此日志不可发表评论。