设为首页 收藏本站
查看: 3557|回复: 0

[经验分享] CentOS 6.5 Apache搭建虚拟主机

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2014-5-5 08:41:22 | 显示全部楼层 |阅读模式
一.虚拟主机简介
虚拟主机,又称虚拟服务器、主机空间或是网页空间,是一种让单一服务器可以运行多个网站或服务的技术。虚拟并非指不存在,而是指空间是由实体的服务器延伸而来,其硬件系统可以是基于服务器群,或者单个服务器。
虚拟主机技术主要应用于HTTP,FTP,EMAIL等多项服务,将一台服务器的某项或者全部服务内容逻辑划分为多个服务单位,对外表现为多个服务器,从而充分利用服务器硬件资源。
二.虚拟主机的实现类型
1.基于主机名(Name-based)
有客户端提供网址,决定其对应的服务,这个方法有效减少IP占用,但必须依赖DNS提供域名解析服务。若DNS部分解析出现故障,则对应此名称的服务也会无法适用。
2.基于IP(IP-based)
在服务器里绑定多个IP,不同的IP来管理多个服务。
3.基于端口(Port-based)
近似于IP地址对应,不过是在同一个IP之下,利用不同的Port端口号来区别不同的服务,藉以快速创建多个虚拟主机。例如:
192.168.0.1:80
192.168.0.1:8080
192.168.0.1:8888
不过这类的应用大多用在私人或实验性质的服务中,原因是用户无法利用默认的端口号(例如Web服务的默认端口号80)取用提供的服务,除非用户知道提供服务的端口号。
三.三种虚拟主机实现的基本配置
实验要求:在一台主机上搭建2个网站服务
        www.hyd.com
        www.my.com
        实现基于主机名的虚拟主机(开启:NameVirtualHost);
        实现基于IP的虚拟主机(多个ip需要把中心主机取消);
        实现基于端口的虚拟主机(需在全局配置中配置listen);
创建实验环境:
实现通过域名访问站点需要DNS的解析,可修改DNS数据库文件记录将2个站点IP都指向本机,
在客户端设置基于/etc/hosts主机名的解析:
%SystemRoot%\system32\drivers\etc\添加
www.hyd.com 172.16.6.1
www.my.com  172.16.6.1
创建网站存放目录及测试页
# mkdir -p /data/web/{iyunv,linuxmi}
# echo "<h1>www.hyd.com</h1>" > /data/web/hyd/index.html
# echo "<h1>www.my.com</h1>" > /data/web/my/index.html
剩下的就是配置虚拟主机了。。。,需要注意的事centos6.5自带apache,此处不再配置。


[iyunv@localhost ~]# rpm -q httpd
httpd-2.2.15-29.el6.centos.x86_64
注意,配置虚拟主机由两种方法:直接在httpd.conf里面添加VirutalHost标签对定义即可,或者在conf.d目录下新建文件virtual.conf。本文直接在httpd.conf里面配置。
1.搭建基于主机名虚拟主机
打开web服务的主配置文档:vim /etc/httpd/conf/httpd.conf
开启:NameVirtualHost 172.16.6.1:80


NameVirtualHost 172.16.6.1:80
<VirtualHost 172.16.6.1:80>
    ServerAdmin www.hyd.com
    DocumentRoot /data/web/hyd
    ServerName www.hyd.com
    ErrorLog logs/www.hyd.com-error_log
    CustomLog logs/www.hyd.com-access_log common
</VirtualHost>
<VirtualHost 172.16.6.1:80>
    ServerAdmin www.my.com
    DocumentRoot /data/web/my
    ServerName www.my.com
    ErrorLog logs/www.my.com-error_log
    CustomLog logs/www.my.com-access_log common
</VirtualHost>

#httpd -t     //语法检测
#service httpd restart
浏览器测试
http://www.hyd.com
http://www.my.com
2.搭建基IP的虚拟主机
# ifconfig eth0:0 172.16.6.10         //设置另一个IP   
# vim /etc/httpd/conf/httpd.conf      //修改配置文件


<VirtualHost 172.16.6.1:80>
    DocumentRoot /data/web/hyd
    ServerName 172.16.6.1
    ErrorLog logs/172.16.6.1-error_log
    CustomLog logs/172.16.6.1-access_log common
</VirtualHost>
<VirtualHost 172.16.6.10:80>
    DocumentRoot /data/web/my
    ServerName 172.16.6.10
    ErrorLog logs/172.16.6.10-error_log
    CustomLog logs/172.16.6.10-access_log common
</VirtualHost>
#httpd -t     //语法检测
#service httpd restart
浏览器测试
http://172.16.6.1
http://172.16.6.10
3.搭建基于端口的虚拟主机
# vim /etc/httpd/conf/httpd.conf      //修改配置文件


........
Listen 80
Listen 81      //在全局配置中仍需添加端口
.........


<VirtualHost 172.16.6.1:80>
    DocumentRoot /data/web/hyd
    ErrorLog logs/172.16.6.1:80-error_log
    CustomLog logs/172.16.6.1:81-access_log common
</VirtualHost>
<VirtualHost 172.16.6.1:81>
    DocumentRoot /data/web/my
    ErrorLog logs/172.16.6.1:81-error_log
    CustomLog logs/172.16.6.1:81-access_log common
</VirtualHost>
#httpd -t     //语法检测
#service httpd restart
浏览器测试
http://172.16.6.1:80
http://172.16.6.10:81
四.虚拟主机扩展配置
1.限制部分ip访问某一虚拟主机,如仅允许192.168.0.0/24网络中的客户机访问
2.为某一虚拟主机提供基本认证功能,并为其提供两个虚拟用户webuser1和webuser2,
密码均为redhat,要求允许此两用户在提供密码的情况下访问此站点;


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-18649-1-1.html 上篇帖子: CentOS 5.4 +apache 2.4.2 编译安装SVN服务器 neon (含所需软件包) 下篇帖子: 基于apache对tomcat做负载均衡与DeltaManager(会话保持)的使用 虚拟主机
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表