ITPub博客

首页 > > > 部署Apache服务-虚拟主机

部署Apache服务-虚拟主机

作者:longmanma 时间:2019-12-12 17:44:54 0 删除 编辑

虚拟主机

虚拟主机介绍

基于IP的虚拟主机

基于PORT的虚拟主机

基于域名的虚拟主机

一、虚拟主机介绍

默认情况下,一个web服务器软件只能定义一个默认网站,也就是说只能发布一个WEB站点,对于大网站还可以,有海量用户来消耗服务器的资源,但是小网站呢?一个服务器上只跑一个小网站,服务器资源使用约等于0,那就尴尬了。为了充分利用服务器资源,现实生产环境中一般都是采用一个WEB服务器软件发布多个站点。如何解决这个问题呢?那就是配置虚拟主机!

虚拟主机和默认网站在apache中不能同时存在,只能存在一种,当虚拟主机出现后,apache默认网站就失效了,如果你还需要默认网站,就拿虚拟主机在发布一次默认网站对应的站点即可解决。

虚拟主机应用场景:一个WEB服务器同时发布多个WEB站点

一个站点出现在网络中需要三个条件:监听IP、监听port、域名。

so

虚拟主机有三种实现方式

基于IP地址

基于监听端口

基于域名(host)

接下来我们就可以使用虚拟主机发布多个网站吧,大家在学习的同时要总结每种实现方式的特点及应用场景

二、基于IP的虚拟主机

step 1 修改主配置文件,打开虚拟主机子配置文件

[root@apache_251 apache]# egrep "Include" conf/httpd.conf

#Include conf/extra/httpd-mpm.conf

#Include conf/extra/httpd-multilang-errordoc.conf

#Include conf/extra/httpd-autoindex.conf

#Include conf/extra/httpd-languages.conf

#Include conf/extra/httpd-userdir.conf

#Include conf/extra/httpd-info.conf

#

#把本行的#去掉

Include conf/extra/httpd-vhosts.conf

#

#

#Include conf/extra/httpd-manual.conf

#Include conf/extra/httpd-dav.conf

#Include conf/extra/httpd-default.conf

Include conf/extra/proxy-html.conf

#Include conf/extra/httpd-ssl.conf

step 2 设置基于IP的虚拟主机

1)给服务器配置多个IP,有几个虚拟主机及配置几个IP地址,我们实验用了两个虚拟主机,所以我有两个IP即可 192.168.11.251 192.168.11.252

[root@apache_251 ~]# ifconfig ens33:1 192.168.11.252

2)创建两个WEB站点 WEB1 WEB2

[root@apache_251 extra]# mkdir /usr/local/apache/htdocs/web{1..2}

#生成两个测试页面

[root@apache_251 extra]# echo web1 > /usr/local/apache/htdocs/web1/index.html

[root@apache_251 extra]# echo web2 > /usr/local/apache/htdocs/web2/index.html

3)设置子配置文件

[root@apache_251 extra]# cat httpd-vhosts.conf

<VirtualHost 192.168.11.251:80>

DocumentRoot "/usr/local/apache/htdocs/web1"

#ServerName dummy-host.example.com

#ErrorLog "logs/dummy-host.example.com-error_log"

#CustomLog "logs/dummy-host.example.com-access_log" common

</VirtualHost>

<VirtualHost 192.168.11.252:80>

DocumentRoot "/usr/local/apache/htdocs/web2"

#ServerName dummy-host2.example.com

#ErrorLog "logs/dummy-host2.example.com-error_log"

#CustomLog "logs/dummy-host2.example.com-access_log" common

</VirtualHost>

4)重启apache

[root@apache_251 extra]# /usr/local/apache/bin/apachectl -t

Syntax OK

[root@apache_251 extra]# killall httpd

[root@apache_251 extra]# /usr/local/apache/bin/apachectl

5)测试

[root@apache_251 ~]# elinks http://192.168.11.251 -dump

web1

[root@apache_251 ~]# elinks http://192.168.11.252 -dump

web2

基于IP的虚拟主机特点

不同IP对应不同网站

访问方便,用户直接使用默认端口即可访问

服务器需要有多个IP地址(一个公网IP大概一年的费用是600左右)

适合IP充足环境

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2730/viewspace-3133672/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 爬虫推荐的工具
请登录后发表评论 登录
全部评论

注册时间:2019-12-18

  • 博文量
    492
  • 访问量
    12005