一、基于ip地址的配置Nginx的虚拟主机
1、环境:一台Centos6的服务器,Nginx ,只有一个网卡即一个实际Ip地址
2、先修改Centos6系统的IP地址的配置文件,配置一个虚拟的IP地址
步骤:将ifcfg-eth0这个文件复制一份,新复制的文件名以 : 来取个别名
命令: 进入到ifcfg-eth0这个文件的路劲下面
cd /etc/sysconfig/network-scripts
复制ifcfg-eth0配置文件
cp ifcfg-eth0/ ifcfg-eth0:1
修改ifcfg-eth0:1配置文件
DEVICE=eth0:1
IPADDR=192.168.25.103
重启Centos系统
3、修改Nginx的配置文件
步骤:找到自己Nginx的安装路劲,进入到conf中编辑nginx.conf
cd /usr/local/nginx/conf
编辑nginx.conf vi nginx.conf
在这个配置文件中一个server就是表示一个虚拟主机,我们这里要配置两个nginx虚拟主机,所以主要写两个server配置即可 命令如下:
server {
listen 80;
server_name 192.168.228.131;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html-131;
index index.html index.htm;
}
}
server {
listen 80;
server_name 192.168.228.141;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html-141;
index index.html index.htm;
}
}
注意点:在配置server的时候在server_name 这处不能再写localhost了,全部要写完整的ip地址
4、可以看出在第三步的配置server的时候在root那处,我写了两个不同的root,所以我们要在nginx下的html复制两份名字要和server配置的一样
cd /usr/local/nginx
cp html/ html-131 -r
cp html/ html-141 -r
5、重启nginx即可
cd /usr/local/nginx/sbin
./nginx -s reload
二、基于端口配置nginx虚拟主机
1、修改Nginx的配置文件
步骤:找到自己Nginx的安装路劲,进入到conf中编辑nginx.conf
cd /usr/local/nginx/conf
编辑nginx.conf vi nginx.conf
在这个配置文件中一个server就是表示一个虚拟主机,我们这里要配置两个nginx虚拟主机,所以主要写两个server配置即可 命令如下:
server {
listen 81;
server_name 192.168.228.131;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html-81;
index index.html index.htm;
}
}
server {
listen 82;
server_name 192.168.228.131;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html-82;
index index.html index.htm;
}
}
根据端口的不同配置nginx虚拟主机,在配置文件中的server中的listen就是端口,此时server_name这里的ip地址是要一样的
2、可以看出在第三步的配置server的时候在root那处,我写了两个不同的root,所以我们要在nginx下的html复制两份名字要和server配置的一样
cd /usr/local/nginx
cp html/ html-81 -r
cp html/ html-82 -r
3、重启nginx即可
cd /usr/local/nginx/sbin
./nginx -s reload
4、注意点:这里因为新配置了两个81和82的端口,在防火墙配置中没有放开这两个端口,所以我们只需要把防火墙关闭或者在防火墙的配置文件中添加这两个端口即可
三、利用不同的域名来配置nginx虚拟主机
1、利用域名来配置nginx虚拟主机,就要用到DNS服务器来解析不同域名和ip地址的映射关系,在没有DNS服务器的情况下我们可以在自己的本机上模拟dns的解析
2、模拟dns解析,修改本地的host文件,这个文件的路劲为 C:\Windows\System32\drivers\etc
在这个host文件里写上IP地址和你自己需要的域名的对应关系
例如:192.168.228.141 www.hayward.com
192.168.228.141 www.dong.com
3、修改Nginx的配置文件
步骤:找到自己Nginx的安装路劲,进入到conf中编辑nginx.conf
cd /usr/local/nginx/conf
编辑nginx.conf vi nginx.conf
在这个配置文件中一个server就是表示一个虚拟主机,我们这里要配置两个nginx虚拟主机,所以主要写两个server配置即可 命令如下:
server {
listen 80;
server_name www.hayward.com;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html-www;
index index.html index.htm;
}
}
server {
listen 80;
server_name www.dong.com;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html-dong;
index index.html index.htm;
}
}
4、可以看出在第三步的配置server的时候在root那处,我写了两个不同的root,所以我们要在nginx下的html复制两份名字要和server配置的一样
cd /usr/local/nginx
cp html/ html-www -r
cp html/ html-dong -r
5、重启nginx即可
cd /usr/local/nginx/sbin
./nginx -s reload