Centos6.5中Nginx部署基于IP的虚拟…

时间:2023-01-27 17:11:26
Centos6.5 中Nginx
部署基于IP 的虚拟主机
王尚2014.11.18
一、介绍虚拟主机
虚拟主机是使用特殊的软硬件技术,把一台真实的物理电脑主机
分割成多个逻辑存储单元,每个单元都没有物理实体,但是每个物理
单元都能像真实的物理主机一样在网络上工作,具有单独的IP
地址
(或共享的IP 地址)以及完整的Internet
服务器功能。
每个虚拟主机都具有独立的域名和完整的Internet
服务器(支持
www、FTP、E-Mail)功能。
二、环境
CentOS release 6.5
Nginx 0.7.65
(查看CentOS 版本命令uname、uname -r、cat
/etc/centos-release
查看nginx 版本命令/opt/nginx/sbin/nginx
-V)
三、进行配置基于IP 的虚拟主机
Linux 操作系统都允许添加IP
别名。即:可以再一块物理网卡上
绑定多个IP
地址。结果就能够在使用单一个服务器上运行多个基于
IP
的虚拟机。设置方法也非常容易,只需配置系统上的网络接口,
让它监听额外的IP 地址。使用linux
的标准网络配置工具(ifconfig
和route)添加IP 别名。
(1)使用ifconfig
命令查看该服务器的IP 地址
Centos6.5中Nginx部署基于IP的虚拟…


(2)、在eth0
网卡设备上添加两个IP 别名192.168.126.189 和
192.168.126.190Centos6.5中Nginx部署基于IP的虚拟…


Centos6.5中Nginx部署基于IP的虚拟…



Centos6.5中Nginx部署基于IP的虚拟…



Centos6.5中Nginx部署基于IP的虚拟…


(3)执行ifconfig
命令
Centos6.5中Nginx部署基于IP的虚拟…


(4)验证配置并进行优化设计
使用另一台服务器ping 192.168.126.190
和192.168.126.189 两
个IP。
Centos6.5中Nginx部署基于IP的虚拟…

 

Centos6.5中Nginx部署基于IP的虚拟…


可以ping 通,说明配置无误。
刚才的配置在重启服务器后会消失,可以进行优化,把以上几条
命令写进自启动文件当中。
vi /etc/rc.local 在文件末尾增加如下内容:
ifconfig eth0:1 192.168.126.190
broadcast 192.168.126.255
netmask 255.255.255.0 up
route add -host 10.0.0.190 dev
eth0:1
ifconfig eth0:2 192.168.126.189
broadcast 192.168.126.255
netmask 255.255.255.0 up
route add -host 192.168.126.189 dev
eth0:2
(5)配置Nginx
的配置文件(vi /opt/nginx/conf/nginx.conf)
分别对192.168.126.190 和192.168.126.189
两个IP 配置两个纯静
态HTML 支持的虚拟主机。
Centos6.5中Nginx部署基于IP的虚拟…
注:
一段server{.........}就是一个虚拟机,如果要配置多个虚拟机,
建立多段server{...........}配置即可。
监听的IP 和端口也可以不写IP
地址,只写端口,即写成:“listen
80”表示监听该服务器上的所有IP 的80
端口,通过server_name 区
分不同的虚拟主机。
(6)建立各虚拟主机的本地文件目录
wwwroot 文件夹是nginx 安装时的html
文件存放目录。
mkdir /web/wwwroot/host2
mkdir /web/wwwroot/host3
在host2 和host3 中分别新建index.html。
host2/index.html
Centos6.5中Nginx部署基于IP的虚拟…
host3/index.html
Centos6.5中Nginx部署基于IP的虚拟…
(7)访问结果
Centos6.5中Nginx部署基于IP的虚拟…



Centos6.5中Nginx部署基于IP的虚拟…