nginx(三)初步搭建nginx虚拟主机
上面就是nginx基于域名、ip访问的配置,掌握住格式,就很好配置了。
一、基于域名的虚拟主机的配置;
1、我们在此复习一下DNS的配置;
[root@mgmserver /]# hostname
mgmserver.com
[root@/]#yum install bind*
[root@mgmserver /]#rpm -ivh /var/cdiso/Server/caching-nameserver-9.3.6-4.P1.el5.i386.rpm
[root@mgmserver /]# cd /var/named/chroot/etc/
[root@mgmserver etc]# cp -p named.caching-nameserver.conf named.conf
[root@mgmserver etc]#vi named.conf
其他的不用修改只在视图里面添加zone就可以了;
view localhost_resolver {
match-clients { any; };
match-destinations { any; };
recursion yes;
include "/etc/named.rfc1912.zones";
zone "mgmserver.com" {
type master;
file "mgmserver.com.zone";
allow-update { any;};
};
zone "0.168.192.in-addr.arpa" {
type master;
file "192.168.0.rev";
allow-update { any;};
};
[root@mgmserver etc]# cd ../var/named/
下面有很多模板文件。Named.ca就是根区域的数据库文件,localhost.zone这个是正向解析的数据库文件,named.local这个是反向解析的数据库文件。
[root@mgmserver named]# cp localhost.zone mgmserver.com.zone
[root@mgmserver named]# cp named.local 192.168.0.rev
编辑 这两个文件
[root@mgmserver named]#vi mgmserver.com.zone
$TTL 86400
@ IN SOA mgmserver.com. root.mgmserver.com. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS mgmserver.com.
IN MX 10 mail.mgmserver.com.
mail IN A 192.168.0.28
server IN A 192.168.0.33
www IN A 192.168.0.28
web IN CNAME www.mgmserver.com.
[root@mgmserver named]#vi 192.168.0.rev
$TTL 86400
@ IN SOA mgmserver.com. root.mgmserver.com. (
42 ; serial (d. adams)
3H ; refresh我
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS mgmserver.com.
28 IN PTR mgmserver.com.
33 IN PTR server.mgmserver.com.
简单的配置一下,我们要使用的www.mgmserver.com 与web.mgmserver.com这两个域名来测试;
[root@mgmserver named]# named-checkconf /var/named/chroot/etc/named.conf
[root@mgmserver named]# service named restart
停止 named: [确定]
启动 named: [确定]
我们到另外一台机器测试

到这里我们的为nginx的配置www.mgmserver.com 与web.mgmserver.com这两个域名都可以使用过了;
2、配置nginx配置文件,添加两个虚拟主机
[root@mgmserver conf]# vi nginx.conf

[root@mgmserver www.mgmserver.com_web]# /usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
[emerg]: "server" directive is not allowed here in /usr/local/nginx/conf/nginx.conf:45
configuration file /usr/local/nginx/conf/nginx.conf test failed
第一次出现错误提示,查找原来是少了一个大括号,添加上就可以了;在检测就OK了;
[root@mgmserver www.mgmserver.com_web]# /usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@mgmserver www.mgmserver.com_web]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
启动nginx
[root@mgmserver conf]# cd /var/web/
[root@mgmserver web]# ls
web.mgmserver.com_web www.mgmserver.com_web
在这两个目录里面分别建立一个index.html文件保存
到另外一个server2003上面测试


两个静态页面已基本OK;
二、基于IP的虚拟之际的配置;
[root@mgmserver conf]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:00:6C:BD:F3:00
inet addr:192.168.0.28 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::200:6cff:febd:f300/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:19200 errors:0 dropped:0 overruns:0 frame:0
TX packets:9925 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1680955 (1.6 MiB) TX bytes:1308926 (1.2 MiB)
Interrupt:50 Base address:0x4000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:269 errors:0 dropped:0 overruns:0 frame:0
TX packets:269 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:24484 (23.9 KiB) TX bytes:24484 (23.9 KiB)
[root@mgmserver ~]# ifconfig eth0:1 192.168.0.37 broadcast 192.168.0.255 netmask 255.255.255.0 up
[root@mgmserver ~]# route add -host 192.168.0.37 dev eth0:1
[root@mgmserver ~]# ifconfig eth0:2 192.168.0.38 broadcast 192.168.0.255 netmask 255.255.255.0 up
[root@mgmserver ~]# route add -host 192.168.0.38 dev eth0:2
[root@mgmserver ~]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:00:6C:BD:F3:00
inet addr:192.168.0.28 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::200:6cff:febd:f300/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:20209 errors:0 dropped:0 overruns:0 frame:0
TX packets:10625 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1768186 (1.6 MiB) TX bytes:1390606 (1.3 MiB)
Interrupt:50 Base address:0x4000
eth0:1 Link encap:Ethernet HWaddr 00:00:6C:BD:F3:00
inet addr:192.168.0.37 Bcast:192.168.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:50 Base address:0x4000
eth0:2 Link encap:Ethernet HWaddr 00:00:6C:BD:F3:00
inet addr:192.168.0.38 Bcast:192.168.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:50 Base address:0x4000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:281 errors:0 dropped:0 overruns:0 frame:0
TX packets:281 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:25797 (25.1 KiB) TX bytes:25797 (25.1 KiB)
从另外一台win2003上测试

结果都是通的;通过使用ifconfig与route添加的ip地址别名在服务器重启后就会消失了,可以将这两条语句添加到/etc/rc.local 文件中,让系统开机时自动运行;
#vi /etc/rc.local
ifconfig eth0:1 192.168.0.37 broadcast 192.168.0.255 netmask 255.255.255.0 up
route add -host 192.168.0.37 dev eth0:1
ifconfig eth0:2 192.168.0.38 broadcast 192.168.0.255 netmask 255.255.255.0 up
route add -host 192.168.0.38 dev eth0:2
保存就可以了;
下面我们在nginx的配置文件中nginx.conf分别对192.168.0.28 ,192.168.0.37,192.168.0.38三个IP配置虚拟主机,
server {
listen 192.168.0.28:80;
server_name 192.168.0.28;
access_log logs/192.168.0.28.access.log main;
location / {
root /var/web/192.168.0.28;
index index.html index.htm;
}
}
server {
listen 192.168.0.37:80;
server_name 192.168.0.37;
access_log logs/192.168.0.37.access.log main;
location / {
root /var/web/192.168.0.37;
index index.html index.htm;
}
}
server {
listen 192.168.0.38:80;
server_name 192.168.0.38;
access_log logs/192.168.0.38.access.log main;
location / {
root /var/web/192.168.0.38;
index index.html index.htm;
}
}
[root@mgmserver ~]# kill -QUIT `cat /usr/local/nginx/logs/nginx.pid`
[root@mgmserver ~]# ps -ef |grep nginx
root 5284 4213 0 13:39 pts/2 00:00:00 vi nginx.conf
root 5356 4053 0 13:49 pts/1 00:00:00 grep nginx
[root@mgmserver ~]# /usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@mgmserver ~]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
在/var/web下面分别建立三个目录
192.168.0.28 192.168.0.37 192.168.0.38
分别在三个目录中放一个index.html 文件 分别写上自己的IP地址;
从win2003上面访问;


上面就是nginx基于域名、ipnginx的虚拟主机配置跟apache的配置类似也有IP与域名配置两种,下面我们就实践一下;
访问的配置,掌握住格式,就很好配置了。
nginx(三)初步搭建nginx虚拟主机的更多相关文章
- Nginx三种模式的虚拟主机(附Apache基于域名的虚拟主机)
1.安装nginx # pcre中文"perl兼容正则表达式",安装pcre库是为了让nginx支持具备URL重写功能 # 的Rewrite模块,rewrite可以实现动态页面转成 ...
- Nginx 反向代理 负载均衡 虚拟主机配置
Nginx 反向代理 负载均衡 虚拟主机配置 通过本章你将学会利用Nginx配置多台虚拟主机,清楚代理服务器的作用,区分正向代理和反向代理的区别,搭建使用Nginx反向搭理和负载均衡,了解Nginx常 ...
- Nginx 反向代理 负载均衡 虚拟主机
Nginx 反向代理 负载均衡 虚拟主机配置 通过本章你将学会利用Nginx配置多台虚拟主机,清楚代理服务器的作用,区分正向代理和反向代理的区别,搭建使用Nginx反向搭理和负载均衡,了解Nginx常 ...
- 【转】Nginx 反向代理 负载均衡 虚拟主机配置
原文:http://www.cnblogs.com/itdragon/p/8059000.html Nginx 反向代理 负载均衡 虚拟主机配置 通过本章你将学会利用Nginx配置多台虚拟主机,清楚代 ...
- nginx之安装、多虚拟主机、反向代理和负载均衡
一.web服务器与web框架 1.web服务器简介 Web 网络服务是一种被动访问的服务程序,即只有接收到互联网中其他主机发出的请求后才会响应,最终用于提供服务程序的Web服务器会通过 HTTP(超文 ...
- nginx笔记 安装nginx 配置 反向代理 多虚拟主机
1,检测linux上是否 通过yum安装了nginxrpm -qi nginx 2.安装nginx之前的依赖包yum install gcc patch libffi-devel python- ...
- IIS web搭建之虚拟主机
IIS web搭建之虚拟主机 虚拟目录:能将一个网站的文件分散存储在同一个计算机的不同目录和其他计算机. 使用虚拟目录的好处: 1.将数据分散保存到不同的磁盘或者计算机上,便于分别开发和维护. 2.当 ...
- nginx配置实战1----配置虚拟主机
1 nginx虚拟主机的概念 虚拟主机是在网络服务器上划分出一定的磁盘空间供用户放置站点.应用组件等,提供必要的站点功能.数据存放和传输功能,所谓虚拟主机,也叫"网站空间",就是把 ...
- nginx的基本配置和虚拟主机的配置
在Nginx配置文件(nginx.conf)中,一个最简化的虚拟主机配置代码如下: 跟Apache -样,Nginx也可以配置多种类型的虚拟圭机:一是基于IP的虚拟主机,二是基于域名的虚拟主机,三是基 ...
随机推荐
- Newtonsoft.Json之JArray, JObject, JPropertyJValue
JObject staff = new JObject(); staff.Add(new JProperty("Name", "Jack")); staff.A ...
- bootstrap multiselect两大组件
组件说明以及API 1.第一个组件——multiple-select.这个组件风格简单.文档全.功能强大.但是觉得它选中的效果不太好.关于它的效果展示,我们放在后面. 2.第二个组件——bootstr ...
- 22.C#分组和查询延续及选择综合症(十一章11.6-11.7)
对于昨天的连接还有一个知识点没有说,那就是分组连接.是11.5中的内容,补上. 分组连接的格式:join 元素 in 序列 on 条件表达式 into 新的序列 内连接和分组连接之间的一个重要差异(即 ...
- C语言总结(6)
1.表达式: 算数表达式: 单目:+, -, ++, --. 双目:+,-,*,/,%. 赋值表达式: 简单赋值:= 复合赋值:+=,-=,*=,,/=%=,!=. 关系表达式: >,>= ...
- 使用Web Deploy进行远程部署
Web Deploy支持直接从本地Visual Studio的工程文件部署网站到远程服务器,部署的过程中可以对比哪些文件变化了需要拷贝,而不是一股脑的全部拷贝,效率和准确性会更好. 部署的过程主要要注 ...
- JSP/SERVLET入门教程--Servlet 使用入门
现在的JSP书籍有的是直接讲述JSP的使用,然后再讲解SERVERLET的使用;也有书籍是先讲述SERVERLET的使用,然后讲解JSP使用.个人认为第二种相对好一些,至于原因大家可以在学习体会到!所 ...
- 新建URL,cookie技术
假如用户禁止了cookie,怎么用session技术 //在这里访问一下session request.getSession(); //这里注意的是 要使用一下session while(iterat ...
- winform之判断验证码,,附加验证码的一般处理程序
这里用的一般处理程序画的验证码图片. 判断验证码步骤: ①先在一般处理程序中获取验证码(一般处理程序中session的调用→context.Session[]) string code = GetRn ...
- Java基础-JVM内存回收
Sun的JVMGenerationalCollecting(垃圾回收)原理是这样的:把对象分为年青代(Young).年老代(Tenured).持久代(Perm),对不同生命周期的对象使用不同的算法.( ...
- Java String是不可变对象
基本数据类型和String类型都是值传递,数组,对象等是引用传递 经多方面查找,String很奇特,虽然是引用数据类型,但是采用的却是值传递!!!基本数据类型采用的都是值传递,数组和对象都是引用传递( ...