来谈谈:Centos中Nginx安排基于IP的虚拟主机
小知识:CentOS从来就不是一个人的独角戏,也许CentOS会有分叉或名称变更的危险,但决不能说它接近死亡。1、虚拟主机概念虚拟主机是在收集办事器上划分出必定的磁盘空间供用户放置站点、运用组件等,供给需要的站点功效、数据寄存和传输功效。所谓虚拟主机,也叫“网站空间”,就是把一台运转在互联网上的办事器划分红多个“虚拟”的办事器,每个虚拟主机都具有自力的域名和完全的Internet办事器(支撑WWW、FTP、E-mail等)功效,从用户角度来看,每台虚拟主机和一台自力的办事器完整雷同,在IP地址日趋重要的明天,基于域名的虚拟主机要比基于IP的虚拟主机应用的加倍普遍。
2、体系情况
体系平台:RHEL5.4
Nginx版本:nginx-1.0.15
3、设置装备摆设基于IP的虚拟主机
Linux、FreeBSD操作体系都许可添加IP别号。IP别号即:可以在一块物理网卡上绑定多个IP地址。如许就可以够在应用单一网卡的统一个办事器上运转多个基于IP的虚拟主机。设置IP别号也异常轻易,只须设置装备摆设体系上的收集接口,让它监听额定的lP地址。在Linux体系上,可使用尺度的收集设置装备摆设对象(好比ifconfig和route敕令)添加IP别号。
1)、先用ifconfig敕令检查该办事器的lP地址。
#ifconfig
eth0Linkencap:EthernetHWaddr08:00:27:99:E4:21
inetaddr:10.0.0.133Bcast:10.255.255.255Mask:255.0.0.0
inet6addr:fe80::a00:27ff:fe99:e421/64Scope:Link
UPBROADCASTRUNNINGMULTICASTMTU:1500Metric:1
RXpackets:7324errors:0dropped:0overruns:0frame:0
TXpackets:2051errors:0dropped:0overruns:0carrier:0
collisions:0txqueuelen:1000
RXbytes:719461(702.5KiB)TXbytes:308638(301.4KiB)
loLinkencap:LocalLoopback
inetaddr:127.0.0.1Mask:255.0.0.0
inet6addr:::1/128Scope:Host
UPLOOPBACKRUNNINGMTU:16436Metric:1
RXpackets:765errors:0dropped:0overruns:0frame:0
TXpackets:765errors:0dropped:0overruns:0carrier:0
collisions:0txqueuelen:0
RXbytes:48577(47.4KiB)TXbytes:48577(47.4KiB)
#
2)、在eth0网卡装备上添加两个lP别号10.0.0.189和10.0.0.190,经由过程ifconfig和route敕令来停止:
#ifconfigeth0:110.0.0.189broadcast10.255.255.255netmask255.0.0.0up
#routeadd-host10.0.0.189deveth0:1
#ifconfigeth0:210.0.0.190broadcast10.255.255.255netmask255.0.0.0up
#routeadd-host10.0.0.190deveth0:2
3)、再履行ifconfig敕令,就能够看到eth0网卡装备上绑定了两个lP别号
#ifconfig
eth0Linkencap:EthernetHWaddr08:00:27:99:E4:21
inetaddr:10.0.0.133Bcast:10.255.255.255Mask:255.0.0.0
inet6addr:fe80::a00:27ff:fe99:e421/64Scope:Link
UPBROADCASTRUNNINGMULTICASTMTU:1500Metric:1
RXpackets:7490errors:0dropped:0overruns:0frame:0
TXpackets:2151errors:0dropped:0overruns:0carrier:0
collisions:0txqueuelen:1000
RXbytes:735277(718.0KiB)TXbytes:342506(334.4KiB)
eth0:1Linkencap:EthernetHWaddr08:00:27:99:E4:21
inetaddr:10.0.0.189Bcast:10.255.255.255Mask:255.0.0.0
UPBROADCASTRUNNINGMULTICASTMTU:1500Metric:1
eth0:2Linkencap:EthernetHWaddr08:00:27:99:E4:21
inetaddr:10.0.0.190Bcast:10.255.255.255Mask:255.0.0.0
UPBROADCASTRUNNINGMULTICASTMTU:1500Metric:1
loLinkencap:LocalLoopback
inetaddr:127.0.0.1Mask:255.0.0.0
inet6addr:::1/128Scope:Host
UPLOOPBACKRUNNINGMTU:16436Metric:1
RXpackets:771errors:0dropped:0overruns:0frame:0
TXpackets:771errors:0dropped:0overruns:0carrier:0
collisions:0txqueuelen:0
RXbytes:48897(47.7KiB)TXbytes:48897(47.7KiB)
#
4)、从别的一台办事器Ping10.0.0.189和10.0.0.190两个IP,假如可以或许Ping通,则证实设置装备摆设无误。然则,经由过程ifconfig和route设置装备摆设的IP别号在办事重视启后会消逝,不外可以将这两条ifconng和route敕令添加到/etc/rc.local文件中,让体系开机时主动运转,以下是相干敕令:
vi/etc/rc.local
在文件末尾增长以下内容,然后保留便可
ifconfigeth0:110.0.0.189broadcast10.255.255.255netmask255.0.0.0up
routeadd-host10.0.0.189deveth0:1
ifconfigeth0:210.0.0.190broadcast10.255.255.255netmask255.0.0.0up
routeadd-host10.0.0.190deveth0:2
5)、上面开端设置装备摆设基于IP的虚拟主机,在Nginx设置装备摆设文件(nginx.conf)中,分离对10.0.0.133、10.0.0.189、10.0.0.190三个IP设置装备摆设三个纯静态HTML支撑的虚拟主机。
http{
includemime.types;
default_typeapplication/octet-stream;
log_formatmain$remote_addr-$remote_user[$time_local]"$request"
$status$body_bytes_sent"$http_referer"
"$http_user_agent""$http_x_forwarded_for";
#access_loglogs/access.logmain;
sendfileon;
#tcp_nopushon;
keepalive_timeout65;
#gzipon;
#第一个虚拟主机
server{
listen10.0.0.133:80;#监听的IP和端口
server_name10.0.0.133;#主机称号
access_loglogs/host1.access.logmain;#拜访日记文件寄存路径
location/
{
root/usr/local/nginx/html/host1;#HTML网页文件寄存的目次
indexindex.htmlindex.htm;#默许首页文件,次序从左到右,假如找不到index.html文件,则查找index.htm文件作为首页文件
}
}
#第二个虚拟主机
server{
listen10.0.0.189:80;
server_name10.0.0.189;
access_loglogs/host2.access.logmain;
location/
{
root/usr/local/nginx/html/host2;
indexindex.htmlindex.htm;
}
}
#第三个虚拟主机
server{
listen10.0.0.190:80;
server_name10.0.0.190;
access_loglogs/host3.access.logmain;
location/
{
root/usr/local/nginx/html/host3;
indexindex.htmlindex.htm;
}
}
从下面的设置装备摆设文件中可以看出,一段server{……}就是一个虚拟主机,假如要设置装备摆设多个虚拟主机,树立多段server{……}设置装备摆设便可,异常便利。监听的IP和端口也能够不写IP地址,只写端口,把它设置装备摆设成"listen80",则表现监听该办事器上一切IP的80端口,可经由过程server_name辨别分歧的虚拟主机。
4、测试
1)、用剧本重启nginx。
#servicenginxrestart
2)、在/usr/local/nginx/html/下分离树立三个目次host1,host2,host3。分离在三个目次中放一个index.html文件,分离写上本身的IP地址;
3)、用阅读器拜访响应IP地址。
小知识:CentOS其实就是相当于免费版的RedHat,任何人可以自由使用,不需要向RedHat付任何的费用。当然,同样你也得不到任何有偿的技术支持和升级服务。 Linux简单,占内存少,特别是对于程序开发人员来说很方便,如果说windows的成功在于其方便用户的窗口管理界面。 Linux高手更具有鼓励新手的文化精神。如何在Linux社区获得帮助,需要说明的是你要有周全的思考,准备好你的问题,不要草率的发问。 任何一个叫做操作系统的东西都是这样子构成的:内核+用户界面+一般应用程序。 另外Linux上也有很多的应用软件,安装运行了这些软件后,你就可以在Linux上编辑文档、图?片,玩游戏、上网、播放多媒体文件等。 永中office 2004增强版安装只需要默认安装即可使用并操作大多与win系统雷同,打印机的配置和管理,记录光盘等。 熟悉并掌握安装Linux,安装是学习的前提。目前较常见的安装方法有二种: linux鸟哥的私房菜,第三版,基础篇,网上有pdf下的,看它的目录和每章的介绍就行了,这个绝对原创!
页:
[1]