Apache 配置虚拟主机支持3种方式:基于IP的虚拟主机配置,基于端口的虚拟主机配置,基于域名的虚拟主机配置。本篇随笔记录自己基于IP的虚拟主机配置。

  如果同一台服务器有多个IP,可以使用基于IP的虚拟主机配置,将不同的服务绑定在不同的IP上。

(1)绑定IP:

  在虚拟机中搭建的CentOS 7 服务器的IP被自己设置为了静态IP 192.168.1.210,现在使用ifconfig在同一个网络接口上绑定192.168.1.211~213这三个IP:

ifconfig eth0: 192.168.1.211/ up
ifconfig eth0: 192.168.1.212/ up
ifconfig eth0: 192.168.1.213/ up

(2)在 /etc/hosts 文件中设置IP地址的名称:

用ping命令测试这三个IP地址有没有打通:

可以看到这三个地址是开通的。

(3)建立虚拟主机存放网页的跟目录,并创建首页文件 index.html:

(i) Apache 服务器的HOME地址为 /usr/local/apache2, 在这个地址下,htdocs文件夹为默认的服务器主机存放网页的根目录,现在在 /usr/local/apache2目录下新建 www文件夹,在 www文件夹下新建三个虚拟主机的根目录 nice1,nice2和nice3:

cd /usr/local/apache2
mkdir www
cd www
mkdir nic1 nice2 nice3

(ii) 使用echo 命令在三个虚拟主机的根目录中生成 index.html 文件:

echo "This is nice1 , welcome."> nice1/index.html
echo "This is nice2 , welcome."> nice2/index.html
echo "This is nice3 , welcome."> nice3/index.html

(4) 修改 /usr/local/apache2/conf/httpd.conf 文件,在文件末尾添加以下内容:

Listen 192.168.1.211:
Listen 192.168.1.212:
Listen 192.168.1.213: Include conf/vhost/*.conf

(5) 编辑每个IP的配置文件:

[root@javis:/usr/local/apache2] # cd /usr/local/apache2/conf
[root@javis:/usr/local/apache2/conf] # mkdir vhost
[root@javis:/usr/local/apache2/conf] # cd vhost

在 /usr/local/apache2/conf/vhost/  目录下用 vim 命令生成并编辑 nice1.conf , nice2.conf , nice3.conf 三个文件,内容如下:

仅举 nice1.conf 为例:

<VirtualHost 192.168.1.211:>
ServerName nice1
DocumentRoot /usr/local/apache2/www/nice1
<Directory "/usr/local/apache2/www/nice1/">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
</VirtualHost>

(6) 配置完以后可以启动Apache服务并进行测试:

(i)

(ii) 使用 curl 命令查看三个虚拟主机的内容:

(iii) 用Windows主机的浏览器查看三个虚拟主机的内容:

成功!

CentOS 7运维管理笔记(6)----Apache 基于 IP 的虚拟主机配置的更多相关文章

  1. CentOS 7运维管理笔记(8)----Apache基于域名的虚拟主机配置

    使用基于域名的虚拟主机配置是比较流行的方式,可以在同一个IP上配置多个域名并且都通过80端口访问. (1) 在网卡 eth0的第五个接口上配置 192.168.1.215 这个地址: (2) 配置/e ...

  2. CentOS 7运维管理笔记(7)----Apache 基于端口的虚拟主机配置

    如果一台服务器只有一个IP或需要通过不同的端口访问不同的虚拟主机,可以使用基于端口的虚拟主机配置. (1) 在虚拟机的CentOS7服务器上配置 eth0:4 为192.168.1.214: (2) ...

  3. CentOS 7运维管理笔记(9)----Apache 安全控制与认证

    Apache 提供了多种安全控制手段,包括设置Web访问控制.用户登陆密码认证及 .htaccess 文件等.通过这些技术手段,可以进一步提升Apache服务器的安全级别,减少服务器受攻击或数据被窃取 ...

  4. CentOS 7运维管理笔记(5)----源代码安装Apache 2.4,搭建LAMP服务器

    ##########################    2016-07-07-Thu--20:34 补充 ##################### 编译安装OpenSSL笔记: 如果系统要使用 ...

  5. CentOS 7运维管理笔记(4)----安装ftp服务器

    在CentOS 7下安装ftp服务器,可以使局域网内的主机拥有共享文件的一个站点. 在Linux系统下,vsftp是一款应用比较广泛的FTP软件,其特点是小巧轻快,安全易用.目前在开源操作系统中常用的 ...

  6. apache基于端口的虚拟主机配置

    主机ip: 192.168.7.51 Centos6.5 三个目录/usr/ftp/test/usr/ftp/dev/usr/ftp/demo 实现效果192.168.7.51:8052访问/usr/ ...

  7. CentOS 7运维管理笔记(11)----PHP安装与配置

    PHP的安装同样需要经过环境检查.编译和安装3个步骤. 1.首先用百度搜索 “PHP:Downloads”, 点击第一个网页: 选择5.5.37版本,选择 .tar.gz 格式的文件: 来到镜像列表网 ...

  8. CentOS 7运维管理笔记(12)----PHP页面失去焦点后变成空白的解决方法

    昨天搭建好了LAMP服务器,可以正常看到PHP页面了.后来发现每当把鼠标从浏览器中移开而点击其他地方时,PHP页面就变成一片空白.即PHP页面失去焦点后就变空白,不知为何. 今天网上搜索解决方案,终于 ...

  9. CentOS 7运维管理笔记(10)----MySQL源码安装

    MySQL可以支持多种平台,如Windows,UNIX,FreeBSD或其他Linux系统.本篇随笔记录在CentOS 7 上使用源码安装MySQL的过程. 1.下载源码 选择使用北理工的镜像文件: ...

随机推荐

  1. Web开发模式

    原文链接 开发模式的介绍(完善版) 在Web开发模式中,有两个主要的开发结构,称为模式一(Mode I)和模式二(Mode II). 首先我们来理清一些概念吧: DAO(Data Access Obj ...

  2. 基于iTop4412的FM收音机系统设计(一)

    说明:第一版架构为:APP+JNI(NDK)+Driver(linux),优点是开发简单,周期短,也作为自己的毕业设计 现在更新第二版,FM服务完全植入Android系统中,成为系统服务,架构为:AP ...

  3. springboot(九)-log配置

    spring项目放到tomcat中运行,我们可以在tomcat的logs文件夹下面生成log文件.那么我们的springboot项目没有放到系统安装的tomcat容器中,怎么设置生成log文件呢? 有 ...

  4. TP5.1 查看具体版本

    https://blog.csdn.net/haibo0668/article/details/80865785 echo \think\facade\App::version(); composer ...

  5. 错误及异常处理-[PathTooLongException]指定的路径或文件名太长

    错误信息 System.IO.PathTooLongException:"指定的路径或文件名太长,或者两者都太长.完全限定文件名必须少于 260 个字符,并且目录名必须少于 248 个字符. ...

  6. WIndows下 Pycharm 配置Anaconda和TensorFlow

    1安装PyCharm 前提安装Python,然后去官网下载PyCharm 2 安装Anaconda 在官网下载Anaconda,并安装 下载好之后就跟安装一般的软件没啥区别,选择自己安装的文件夹,下一 ...

  7. Python练习 | WebServer

    #-*- coding:utf-8 -*- import sys, os from http.server import BaseHTTPRequestHandler, HTTPServer #--- ...

  8. SQL Server 2005 中的分区表和索引

    SQL Server 2005 中的分区表和索引 SQL Server 2005          69(共 83)对本文的评价是有帮助 - 评价此主题   发布日期 : 3/24/2005 | 更新 ...

  9. 怎么用代码弹回 UITableView 中左滑出来的删除按钮

    点击取消,让删除按钮弹回去 [tableView setEditing:NO] 初学 ios 真是大菜鸟,这么简单的一个问题搞了 3 个小时

  10. 关于mouseleave事件触发的bug问题

    在做下拉树搜索功能的时候,下方内容框需要一个鼠标移出时就隐藏的功能,于是使用mouseleave的方法, 但是出现了一个问题就是在点击树展开个隐藏的时候,也触发了leave事件,将下方的树进行隐藏,出 ...