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. [转] javascript 判断对象是否存在的10种方法总结

    [From] http://www.jb51.net/article/44726.htm Javascript语言的设计不够严谨,很多地方一不小心就会出错.举例来说,请考虑以下情况.现在,我们要判断一 ...

  2. Ubuntu 15.04 下apt-get安装JDK

    [From] http://blog.csdn.net/skykingf/article/details/45250017 1.删除自带的OpenJDK [python] view plain cop ...

  3. centos7升级firefox的flash插件

    1. 在https://get.adobe.com/flashplayer/下载文件.选择.tar.gz. 2. 下载的文件名为flash_player_npapi_linux.x86_64.tar. ...

  4. 如何在新导入的python项目中一次性生成依赖的第三方库

    requirements.txt用来记录项目所有的依赖包和版本号,只需要一个简单的pip命令就能完成. pip freeze >requirements.txt 然后就可以用 pip insta ...

  5. javascript中构造函数与普通函数的区别还有关于“new”操作符的一些原理

    有一种创建对象的方法叫做工厂模式,例如: function person(name,age){ var o=new Object(); o.name=name; o.age=age; return o ...

  6. pycharm + git实现两台电脑代码同步

    说明:此篇文章是作者方便日后查阅所有,请不要按本文的方法搭建 1.下载msysygit,https://git-for-windows.github.io/ 点击download获取下载链接,可能由于 ...

  7. VS下如何建立一个新的MFC程序 网络编程 课设 基于C++ MFC 连接数据库 小应用 小项目浅析展示

    原文作者:aircraft 原文地址:https://www.cnblogs.com/DOMLX/p/8191036.html 这里不知道会不会有人是真的新手 新新手 不知道怎么 如何建立一个MFC ...

  8. MySQL查询长数据是无值返回(可以尝试换行符)

    如,要在数据库中包含这样数据的记录有多少条: <table class="link-more-blue" style="width: 100%;" bor ...

  9. LintCode刷题小记491

    题目: 判断一个正整数是不是回文数. 回文数的定义是,将这个数反转之后,得到的数仍然是同一个数. 样例: 11, 121, 1, 12321 这些是回文数. 23, 32, 1232 这些不是回文数. ...

  10. web中的HTTP协议

    HTTP协议(HyperText Transfer Protocol 超文本传输协议),是浏览器接收web页面和发送web页面请求的标准协议.HTTP协议是基于TCP/IP协议的,版本号有Http1. ...