apche支持3种类型虚拟主机:
基于IP的虚拟主机
基于端口的虚拟主机
基于主机名的虚拟主机

配置两个站点虚拟主机:
/data/web1
/data/web2

一、基于IP虚拟主机
添加一个IP:[root@localhost ~]# nmcli connection modify ens33 +ipv4.addresses 192.168.95.10/24
重启网络服务:systemctl restart network

1、修改主配置文件
[root@localhost ~]# cd /etc/httpd/conf
[root@localhost conf]# cp httpd.conf{,.bak}

#DocumentRoot "/var/www/html"
注释默认的网站主页,其他保持默认

2、增加虚拟主机配置

cd /etc/httpd/conf.d

[root@localhost conf.d]# vi virtualhost.conf
<Directory "/data">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>

<VirtualHost 192.168.95.10:80>
DocumentRoot /data/web1
ServerName 192.168.95.10
ErrorLog /data/web1/logs/error_log
CustomLog /data/web1/logs/access_log combined
</VirtualHost>

<VirtualHost 192.168.95.11:80>
DocumentRoot /data/web2
ServerName 192.168.95.11
ErrorLog /data/web2/logs/error_log
CustomLog /data/web2/logs/access_log combined
</VirtualHost>

3、创建虚拟主机目录及主页
[root@localhost conf.d]# mkdir -p /data/web{1,2}/logs
[root@localhost conf.d]# echo "web1 test page" >/data/web1/index.html
[root@localhost conf.d]# echo "web2 test page" >/data/web2/index.html

4、重启测试
[root@localhost ~]# yum install elinks -y
[root@localhost ~]# elinks -dump http://192.168.95.10
web1 test page
[root@localhost ~]# elinks -dump http://192.168.95.11
web2 test page

二、基于端口
使用同一个IP,不同的端口
192.168.95.11:80
192.168.95.11:81

1、修改主配置文件
#Listen 80
Listen 192.168.95.11:80
Listen 192.168.95.11:81

2、修改虚拟主机文件
<Directory "/data">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
<VirtualHost 192.168.95.11:80>
DocumentRoot /data/web1
ServerName 192.168.95.11
ErrorLog /data/web1/logs/error_log
CustomLog /data/web1/logs/access_log combined
</VirtualHost>

<VirtualHost 192.168.95.11:81>
DocumentRoot /data/web2
ServerName 192.168.95.11
ErrorLog /data/web2/logs/error_log
CustomLog /data/web2/logs/access_log combined
</VirtualHost>

3、重启测试
[root@localhost ~]# elinks -dump http://192.168.95.11
web1 test page
[root@localhost ~]# elinks -dump http://192.168.95.11:81
web2 test page

三、基于名称的虚拟主机
相同的IP,相同的端口,不同的主机名

www.uplook.com -----web1
www.uplooking.com ----web2

DNS准备略,也可以使用hosts文件
1、修改主配置文件
#Listen 80
Listen 192.168.95.11:80
#Listen 192.168.95.11:81

2、修改虚拟主机文件
<Directory "/data">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
<VirtualHost 192.168.95.11:80>
DocumentRoot /data/web1
ServerName www.uplook.com
ErrorLog /data/web1/logs/error_log
CustomLog /data/web1/logs/access_log combined
</VirtualHost>

<VirtualHost 192.168.95.11:80>
DocumentRoot /data/web2
ServerName www.uplooking.com
ErrorLog /data/web2/logs/error_log
CustomLog /data/web2/logs/access_log combined
</VirtualHost>

3、重启httpd服务测试
[root@localhost ~]# elinks -dump http://www.uplook.com
web1 test page
[root@localhost ~]# elinks -dump http://www.uplooking.com
web2 test page

基于apache的虚拟主机的更多相关文章

  1. Apache配置虚拟主机的三种方法(基于IP、端口、域名)

    1 Apache虚拟主机的实现方式有3种. 基于IP的虚拟主机 基于端口的虚拟主机 基于域名的虚拟主机 2.1 启用虚拟主机的准备工作 2.1.1安装httpd [root@mail httpd]# ...

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

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

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

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

  4. CentOS 7运维管理笔记(6)----Apache 基于 IP 的虚拟主机配置

    Apache 配置虚拟主机支持3种方式:基于IP的虚拟主机配置,基于端口的虚拟主机配置,基于域名的虚拟主机配置.本篇随笔记录自己基于IP的虚拟主机配置. 如果同一台服务器有多个IP,可以使用基于IP的 ...

  5. 基于名称的虚拟主机-Apache

    基于名称的虚拟主机和基于IP的虚拟主机的对比 基于IP的虚拟主机使用连接的IP地址来识别(区分)正确的虚拟主机,所以对于每一个虚拟主机,你都需要有独立的IP地址. 基于名称的虚拟主机,服务器依赖于客户 ...

  6. Nginx三种模式的虚拟主机(附Apache基于域名的虚拟主机)

    1.安装nginx # pcre中文"perl兼容正则表达式",安装pcre库是为了让nginx支持具备URL重写功能 # 的Rewrite模块,rewrite可以实现动态页面转成 ...

  7. 【转】Apache 配置虚拟主机三种方式

    Apache 配置虚拟主机三种方式  原文博客http://www.cnblogs.com/hi-bazinga/archive/2012/04/23/2466605.html 一.基于IP 1. 假 ...

  8. Apache 创建虚拟主机目录和设置默认访问页面

    虚拟主机 (Virtual Host) 是在同一台机器搭建属于不同域名或者基于不同 IP 的多个网站服务的技术. 可以为运行在同一物理机器上的各个网站指配不同的 IP 和端口, 也可让多个网站拥有不同 ...

  9. apache中虚拟主机的配置

    一.两种方式:基于域名的虚拟主机和基于IP地址的的虚拟主机 (这里基于前者) 二.作用:实现在同一个web服务器下,同时运行很多个站点(项目) 三.虚拟主机的配置 1.在核心配置文件中加载虚拟主机配置 ...

随机推荐

  1. html 类似雷达扫描效果 及 闪屏效果

    //雷达扫描效果 1 <em id="Radar" class="RadarFast"></em> css: .RadarFast{ p ...

  2. layer —— 一个简单的jQuery弹出层插件

    layer的使用 4.24更新:注意:layer现在有旧版1.8.5版本和新版本3.0版本的,对应引入的JQ也要不同,相对应的JQ引入1.1和3.1,否则JQ会出问题 4.21更新: 解答4-19的问 ...

  3. Keepalived配置文件详解

    global_defs { router_id LVS_$prio #节点唯一标识,通常为hostname } local_address_group laddr_g1 { ${lvs_node} # ...

  4. linux单项目发布流程

    1.安装python #1.安装python3.7所需要的依赖包yum -y groupinstall "Development tools"yum -y install zlib ...

  5. MySQL5.7 并行复制的学习

    MySQL 5.6 基于库级别的并行复制 MySQL5.6的并行复制是库(schema)级别的,从库为每个库(schema)分配一个线程以此来提高复制效率 在MySQL 5.6版本之前,Slave服务 ...

  6. LOJ #10070 最小生成树计数

    一道mst-- 最开始是毫无头绪,于是就点开了--->题解 大部分题解都是矩阵树--然而第一篇题解告诉了我们暴搜也能过( 思路大概是说,对于一个图\(G\),它的所有最小生成树的相同权值的边的数 ...

  7. 算法(第四版)C# 习题题解——3.1

    写在前面 整个项目都托管在了 Github 上:https://github.com/ikesnowy/Algorithms-4th-Edition-in-Csharp 查找更方便的版本见:https ...

  8. 如何使用postman传数组数据

    如何使用postman传数组数据 在我们做api接口数据调试的时候,大部分是会用到postman的,一般请求数据的参数都是字符串,但是特殊情况下我们是需要传一个数组数据的,那么为了实现这种需求,究竟该 ...

  9. Android系统应用Mms之Sms短信发送流程(Mms应用部分)二

    1. 新建一条短信, 在发送短信之前, 首先创建的是一个会话Conversation, 以后所有与该接收人(一个或多个接收人)的消息交互, 都在该会话Conversation中. ComposeMes ...

  10. pam密码策略

    PAM 的使用历史 PAM 是关注如何为服务验证用户的 API.在使用 PAM 之前,诸如 login(和 rlogin.telnet.rsh)之类的应用程序在 /etc/passwd 中查找用户名, ...