Apache

虚拟主机 --用apache或nginx就可以做

一台服务器跑多台web服务

VPS virtual private server 虚拟专用服务器 --使用虚拟化技术来做

云服务器

虚拟主机(用web服务器来做)--》 VPS (虚拟化) --》 云服务器 (云计算)

使用虚拟化技术(vitural sever 或者 vmware EXS server )把一台服务器分隔成几个服务器,每个都拥有独立的CPU资源,内存资源,磁盘资源,独立IP等、

mkdir -p /var/www/html/A
mkdir -p /var/www/html/B

1.基于IP的虚拟主机

NameVirtualHost *:80

<VirtualHost *:80>
DocumentRoot /var/www/html/A
ServerName 192.168.1.1
ErrorLog logs/1-error_log
CustomLog logs/1-access_log common
</VirtualHost>

<VirtualHost *:80>
DocumentRoot /var/www/html/B
ServerName 192.168.1.2
ErrorLog logs/2-error_log
CustomLog logs/2-access_log common
</VirtualHost>

# ifconfig eth0:0 192.168.1.12 netmask 255.255.255.0   将上面虚拟主机中使用的ip都虚拟出来

验证:
http://192.168.1.1
http://192.168.1.2   --实际情况每个IP使用DNS对应自己的域名、

2.基于端口的虚拟主机

Listen 80

Listen 8080

<VirtualHost *:80>
DocumentRoot /var/www/html/A
ServerName 192.168.1.1
ErrorLog logs/1-error_log
CustomLog logs/1-access_log common
</VirtualHost>

<VirtualHost *:8080>
DocumentRoot /var/www/html/B
ServerName 192.168.1.1
ErrorLog logs/2-error_log
CustomLog logs/2-access_log common
</VirtualHost>

#重启并验证

3.基于域名的虚拟主机

这里可以用hosts文件,也可以用bind服务,不会bind的看一下我前面的bind搭建

NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot /var/www/html/A
ServerName aaa.http.com
ErrorLog logs/1-error_log
CustomLog logs/1-access_log common
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /var/www/html/B
ServerName bbb.http.com
ErrorLog logs/2-error_log
CustomLog logs/2-access_log common
</VirtualHost>

#重启并验证

#####思考#####

1.上面两个域名,那么我直接用IP是能否访问,访问的是哪一个?为什么?
    答案:哪个虚拟主机在最前面,直接使用IP访问的就是哪一个

2.配置了虚拟主机后,那么我原来的DocumentRoot里指的原网站家目录是否还可用?
如果不可用,如何解决?

    答案:不能用。除非再为原家目录再建立一个虚拟主机

3.上面这三种各有什么优缺点?
    基于IP:浪费IP
    基于端口:访问时需要加端口,客户不可能记端口的
    基于域名:比较适合外网直接访问


apache-实战(二)的更多相关文章

  1. coreseek实战(二):windows下mysql数据源部分配置说明

    coreseek实战(二):windows下mysql数据源部分配置说明 关于coreseek在windows使用mysql数据源的配置,以及中文分词的详细说明,请参考官方文档: mysql数据源配置 ...

  2. 【NFS项目实战二】NFS共享数据的时时同步推送备份

    [NFS项目实战二]NFS共享数据的时时同步推送备份 标签(空格分隔): Linux服务搭建-陈思齐 ---本教学笔记是本人学习和工作生涯中的摘记整理而成,此为初稿(尚有诸多不完善之处),为原创作品, ...

  3. chrome调试工具高级不完整使用指南(实战二)

    3.3 给页面添加测试脚本 在现实的工作中,我们往往会遇到一些问题在线上就会触发然后本地就触发不了的问题.或者是,要给某个元素写一个测试脚本.这个时候如果是浏览器有提供一个添加脚本的功能的话,那么我们 ...

  4. Python爬虫实战二之爬取百度贴吧帖子

    大家好,上次我们实验了爬取了糗事百科的段子,那么这次我们来尝试一下爬取百度贴吧的帖子.与上一篇不同的是,这次我们需要用到文件的相关操作. 前言 亲爱的们,教程比较旧了,百度贴吧页面可能改版,可能代码不 ...

  5. 转 Python爬虫实战二之爬取百度贴吧帖子

    静觅 » Python爬虫实战二之爬取百度贴吧帖子 大家好,上次我们实验了爬取了糗事百科的段子,那么这次我们来尝试一下爬取百度贴吧的帖子.与上一篇不同的是,这次我们需要用到文件的相关操作. 本篇目标 ...

  6. Netty 仿QQ聊天室 (实战二)

    Netty 聊天器(百万级流量实战二):仿QQ客户端 疯狂创客圈 Java 分布式聊天室[ 亿级流量]实战系列之15 [博客园 总入口 ] 源码IDEA工程获取链接:Java 聊天室 实战 源码 写在 ...

  7. kubernetes实战(二十八):Kubernetes一键式资源管理平台Ratel安装及使用

    1. Ratel是什么? Ratel是一个Kubernetes资源平台,基于管理Kubernetes的资源开发,可以管理Kubernetes的Deployment.DaemonSet.Stateful ...

  8. SpringSecurity权限管理系统实战—二、日志、接口文档等实现

    系列目录 SpringSecurity权限管理系统实战-一.项目简介和开发环境准备 SpringSecurity权限管理系统实战-二.日志.接口文档等实现 SpringSecurity权限管理系统实战 ...

  9. miniFTP项目实战二

    项目简介: 在Linux环境下用C语言开发的Vsftpd的简化版本,拥有部分Vsftpd功能和相同的FTP协议,系统的主要架构采用多进程模型,每当有一个新的客户连接到达,主进程就会派生出一个ftp服务 ...

  10. Java并发编程原理与实战二十九:Exchanger

    一.简介 前面三篇博客分别介绍了CyclicBarrier.CountDownLatch.Semaphore,现在介绍并发工具类中的最后一个Exchange.Exchange是最简单的也是最复杂的,简 ...

随机推荐

  1. bzoj1079 着色方案 记忆化搜索(dp)

    题目传送门 题目大意: 有k种颜色,每个颜色ci可以涂个格子,要求相邻格子颜色不能一样,求方案数.ci<=5,k<=15. 思路: 题目里最重要的限制条件是相邻格子颜色不能相同,也就是当前 ...

  2. ElementUI 时间控件

    <template> <div class="block"> <span class="demonstration">默认& ...

  3. [转] electron实战开发详细流程

    [From] http://www.myk3.com/arc-8856.html 很久没有更新博客,人越来越懒了,唉 说好做的electron教程距离上次玩electron已经过去了好几个月了.. 这 ...

  4. [转] DOS命令for用法详解

    [From] http://www.jb51.net/article/31284.htm for帮助文档 对一组文件中的每一个文件执行某个特定命令. FOR %variable IN (set) DO ...

  5. Axis 生成客户端client stub文件

    [转自] http://blog.csdn.net/qiao000_000/article/details/5568442 开发前,有个同事先给我们不熟悉Web Service的程序员进行了一些培训, ...

  6. maven项目在eclipse中debug时看不到源码?

    就像图中一样,看不到源码,但是能step over,也可查看变量值,点击edit source lookup path,选定项目的一瞬间源码会出来,但马上又变回原样了,求大神指教~ 我也遇到这个问题了 ...

  7. 一种简单快速的模板解析方法,活用with javascript版

    //一种简单快速的模板解析方法,活用with var parseTpl = function( str, data ) { var tmpl = 'var __p=[];' + 'with(obj|| ...

  8. git push的一些坑

    在安装git的时候我们一般会自己设置一个用户名和邮箱,这个一般设置为全局的用户名,如下所示 git config --global user.name "xxx" git conf ...

  9. 20条IPTables防火墙规则用法! [转]

    20条IPTables防火墙规则用法! 导读 管理网络流量是系统管理员必需处理的最棘手工作之一,我们必需规定连接系统的用户满足防火墙的传入和传出要求,以最大限度保证系统免受攻击.很多用户把 Linux ...

  10. Python归纳 | 爬虫基础知识

    1. urllib模块库 Urllib是python内置的HTTP请求库,urllib标准库一共包含以下子包: urllib.error 由urllib.request引发的异常类 urllib.pa ...