Apache的虚拟主机功能 (Virtual Host) 是可以让一台服务器基于IP、主机名或端口号实现提供多个网站服务的技术。

下面我介绍一下这3种方式具体的配置流程:

一.基于ip地址

首先我们需要在虚拟机中线安装Apache服务程序,Apache服务程序的软件包名叫做httpd,所以我们首先执行命令yum install httpd 从yum仓库中下载服务,输入y确认下载。

接着我们运行Apache服务,使用命令systemctl start httpd启动服务。可以使用命令 systemctl enable httpd来设置Apache服务开机自启动。

接下来就要配置基于IP地址的服务了,我们先是nmtui命令为网卡添加多个地址供我们实验。终端中输入此命令就可以看到网卡配置了。我们通过方向键与回车键点击编辑连接中的网卡ens33,在里面再添加三个IP地址,分别是192.168.42.110    192.168.42.120    192.168.42.130  然后依次确认回到第一个界面,重新启用一次连接,即现断开连接再重新连接,我们的配置便生效了。

下一步我们依次使用ping命令ping我们配置的三个IP地址,ping通即成功。

下一步我们分别创建网站数据目录:在/home/wwwroot下分别创建三个网站数据目录

如图中输出命令可同时创建三个目录,然后我们分别在三个网站数据目录下面写入主页文件,内容就写该网站的IP地址。

如图所示我们已经写进去了。

下一步我们在配置文件中描述基于IP地址的虚拟主机    vim /etc/httpd/conf/httpd.conf   直接将我们的信息找地方写入即可

<VirtualHost 192.168.42.110>
DocumentRoot /home/wwwroot/110
ServerName www.linuxprobe.com
<Directory /home/wwwroot/110>
AllowOverride None
Require all granted
</Directory>
</VirtualHost>

<VirtualHost 192.168.10.120>
DocumentRoot /home/wwwroot/120
ServerName bbs.linuxprobe.com
<Directory /home/wwwroot/120 >
AllowOverride None
Require all granted
</Directory>
</VirtualHost>

<VirtualHost 192.168.10.130>
DocumentRoot /home/wwwroot/130
ServerName tech.linuxprobe.com
<Directory /home/wwwroot/130 >
AllowOverride None
Require all granted
</Directory>
</VirtualHost>

配置完毕后我们要重启一下httpd服务。systemctl restart httpd
最后我们就可以分别以不同IP访问验证结果了。如图所示即为成功。另外两个类同于此。

2.基于主机名(域名)

首先我们还是先下载httpd服务(回复快照以后),配置基于主机名的httpd服务,首先我们要配置网卡IP地址与hosts文件,hosts文件作用是定义IP地址与主机名的映射关系,即强制将某个主机名地址解析到指定的IP地址。vim /ect/hosts 注意要分行写,按照图示

然后与配置IP一样分别创建网站数据目录并分别在网站目录中下入不同的首页文件

中间不注意写错,我重新写了一下不影响。

接着在主配置文件中/etc/httpd/conf/httpd.conf 配置基于主机名称的虚拟主机。

<VirtualHost 192.168.42.100>

DocumentRoot "/home/wwwroot/www"

ServerName "www.linuxprobe.com"

<Directory "/home/wwwroot/www">

AllowOverride None

Require all granted

</directory>

</VirtualHost>

<VirtualHost 192.168.42.100>

DocumentRoot "/home/wwwroot/bbs"

ServerName "bbs.linuxprobe.com"

<Directory "/home/wwwroot/bbs">

AllowOverride None

Require all granted

</Directory>

</VirtualHost>

<VirtualHost 192.168.42.100>

DocumentRoot "/home/wwwroot/tech"

ServerName "tech.linuxprobe.com"

<Directory "/home/wwwroot/tech">

AllowOverride None

Require all granted

</directory>

</VirtualHost>

配置完毕后重启httpd服务然后进入火狐测试,如图即位成功。

3.基于端口

我们还是在安装了httpd服务后进行下一步 分别创建端口为6111.6222网站数据目录,并分别在网站数据目录中写入不同内容的主页文件。

然后在配置文件/etc/httpd/conf/httpd.conf,中的约42行的Listen 80 在下面追加

Listen 6111

Listen 6222

然后在主配置文件的末尾按下面格式定义虚拟主机信息:

<VirtualHost 192.168.42.100:6111>
DocumentRoot “/home/wwwroot/6111”
ServerName www.linuxprobe.com
<Directory “/home/wwwroot/6111”>
AllowOverride None
Require all granted
</Directory>
</VirtualHost>

<VirtualHost 192.168.42.100:6222>
DocumentRoot “/home/wwwroot/6222”
ServerName bbs.linuxprobe.com
<Directory “/home/wwwroot/6222”>
AllowOverride None
Require all granted
</Directory>
</VirtualHost>

配置完成后重新开启httpd服务,就可以使用浏览器测试了

如图所示配置成功,大功告成了。

apache虚拟主机配置的3种方式的更多相关文章

  1. Apache虚拟主机配置(多个域名访问多个目录)

    Apache虚拟主机配置(多个域名访问多个目录) 为了方便管理虚拟主机,我决定使用一种方法,那就是修改httpd-vhosts.conf文件. 第一步首先要使扩展文件httpd-vhosts.conf ...

  2. Apache虚拟主机配置(多个域名访问多个目录)(转)

    Apache虚拟主机配置(多个域名访问多个目录) 为了方便管理虚拟主机,我决定使用一种方法,那就是修改httpd-vhosts.conf文件. 第一步首先要使扩展文件httpd-vhosts.conf ...

  3. Linux下Apache虚拟主机配置

    Linux下Apache虚拟主机的三种配置.这样可以实现一台主机架构多个独立域名网站.其中基于域名的最为常见.性价比也最高.下面PHP程序员雷雪松详细的讲解下Linux下Apache虚拟主机配置的具体 ...

  4. apache虚拟主机配置及解析

    Apache虚拟主机配置及解析 1.修改httpd-vhosts.conf 打开apache(Apache24)/conf/extra/httpd-vhosts.conf文件,添加虚拟主机信息,可以这 ...

  5. Apache虚拟主机配置

    在一个Apache服务器上可以配置多个虚拟主机,实现一个服务器提供多站点服务,其实就是访问同一个服务器上的不同目录.Apache虚拟主机配置有3中方法:基于IP配置.基于域名配置和基于端口配置,这里介 ...

  6. Linux Apache虚拟主机配置方法

    apache 虚拟主机配置 注意: 虚拟主机可以开很多个 虚拟主机配置之后,原来的默认/etc/httpd/httpd.conf中的默认网站就不会生效了 练习: 主机server0 ip:172.25 ...

  7. windows环境下,apache虚拟主机配置

    在windows环境下,apache从配置文件的相关配置: Windows 是市场占有率最高的 PC 操作系统, 也是很多人的开发环境. 其 VirtualHost 配置方法与 Linux 上有些差异 ...

  8. linux apache虚拟主机配置(基于ip,端口,域名)

    配置环境: linux版本:Centos6.4 httpd版本: [root@centos64Study init.d]# pwd/etc/init.d[root@centos64Study init ...

  9. Ubuntu16.04+Apache虚拟主机配置详解

    在window下,Apache的配置文件是httpd.conf,但在Linux下安装了Apache后发现其配置并不像window下那么简单,Linux下Apache将各个设置项分在了不同的配置文件中, ...

随机推荐

  1. C++学习笔记12_各种文件和引入

    1. 编译过程 预处理->编译->汇编->链接->.exe 预处理: ①将所有的“#define”删除,并且展开所有的宏定义 ②处理所有的条件编译指令,如:“#if”.“#if ...

  2. 关于mimikatz lazagne免杀方法

    其实现在的杀软还是玩的老一套,改改特征字符就能过了,最新的defender能用这个方法过 文章直接从笔记复制出来的,有需要的自己看情况用 git clone https://github.com/ge ...

  3. 前端与算法 leetcode 283. 移动零

    目录 # 前端与算法 leetcode 283. 移动零 题目描述 概要 提示 解析 解法一:暴力法 解法二:双指针法 算法 传入[0,1,0,3,12]的运行结果 执行结果 GitHub仓库 # 前 ...

  4. CSPS_102

    $\Huge % Dybala$ T1 神奇单调栈,但是有点码农,要对着对拍调很久. T2 观察到队长跑到i点之后,前面的[1,i)的点都被经过了偶数次,再次到达的时候又得被暗杀 所以通过点i的花费可 ...

  5. CSPS模拟 47

    考试时T1没玩明白,用一个WA90把100盖住了? T1 Emotional Flutter 题目非常蠢萌,只是注意当你把黑块前伸s距离后,应把脚的长度视为0,而不应为1. T2 Endless Fa ...

  6. 康托展开&逆康托展开学习笔记

    啊...好久没写了...可能是最后一篇学习笔记了吧 题目大意:给定序列求其在全排列中的排名&&给定排名求排列. 这就是康托展开&&逆康托展开要干的事了.下面依次介绍 一 ...

  7. P3067 [USACO12OPEN]平衡的奶牛群(折半暴搜)

    暴搜无疑.... 首先考虑纯暴搜...... 考虑每一个数: 选在左边集合 选在右边集合 不选 一共三种情况,用一个数组记录搜到的答案,所以暴搜是3^N的复杂度...直接死亡 于是讲折半暴搜.... ...

  8. 决策树(上)-ID3、C4.5、CART

    参考资料(要是对于本文的理解不够透彻,必须将以下博客认知阅读,方可全面了解决策树): 1.https://zhuanlan.zhihu.com/p/85731206 2.https://zhuanla ...

  9. Linux命令实践( 六)

    1.统计出/etc/passwd文件中其默认shell为非/sbin/nologin的用户个数,并将用户都显示出来 [root@test ~]#awk -F: '{shells[$NF]++;if($ ...

  10. [笔记] HOW2J.CN网站记录的java笔记_第四部分_HTML

    1.写一个显示Hello World的网页, <html> <body> <p>Hello World</p> </body> </h ...