apache-实战(二)
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-实战(二)的更多相关文章
- coreseek实战(二):windows下mysql数据源部分配置说明
coreseek实战(二):windows下mysql数据源部分配置说明 关于coreseek在windows使用mysql数据源的配置,以及中文分词的详细说明,请参考官方文档: mysql数据源配置 ...
- 【NFS项目实战二】NFS共享数据的时时同步推送备份
[NFS项目实战二]NFS共享数据的时时同步推送备份 标签(空格分隔): Linux服务搭建-陈思齐 ---本教学笔记是本人学习和工作生涯中的摘记整理而成,此为初稿(尚有诸多不完善之处),为原创作品, ...
- chrome调试工具高级不完整使用指南(实战二)
3.3 给页面添加测试脚本 在现实的工作中,我们往往会遇到一些问题在线上就会触发然后本地就触发不了的问题.或者是,要给某个元素写一个测试脚本.这个时候如果是浏览器有提供一个添加脚本的功能的话,那么我们 ...
- Python爬虫实战二之爬取百度贴吧帖子
大家好,上次我们实验了爬取了糗事百科的段子,那么这次我们来尝试一下爬取百度贴吧的帖子.与上一篇不同的是,这次我们需要用到文件的相关操作. 前言 亲爱的们,教程比较旧了,百度贴吧页面可能改版,可能代码不 ...
- 转 Python爬虫实战二之爬取百度贴吧帖子
静觅 » Python爬虫实战二之爬取百度贴吧帖子 大家好,上次我们实验了爬取了糗事百科的段子,那么这次我们来尝试一下爬取百度贴吧的帖子.与上一篇不同的是,这次我们需要用到文件的相关操作. 本篇目标 ...
- Netty 仿QQ聊天室 (实战二)
Netty 聊天器(百万级流量实战二):仿QQ客户端 疯狂创客圈 Java 分布式聊天室[ 亿级流量]实战系列之15 [博客园 总入口 ] 源码IDEA工程获取链接:Java 聊天室 实战 源码 写在 ...
- kubernetes实战(二十八):Kubernetes一键式资源管理平台Ratel安装及使用
1. Ratel是什么? Ratel是一个Kubernetes资源平台,基于管理Kubernetes的资源开发,可以管理Kubernetes的Deployment.DaemonSet.Stateful ...
- SpringSecurity权限管理系统实战—二、日志、接口文档等实现
系列目录 SpringSecurity权限管理系统实战-一.项目简介和开发环境准备 SpringSecurity权限管理系统实战-二.日志.接口文档等实现 SpringSecurity权限管理系统实战 ...
- miniFTP项目实战二
项目简介: 在Linux环境下用C语言开发的Vsftpd的简化版本,拥有部分Vsftpd功能和相同的FTP协议,系统的主要架构采用多进程模型,每当有一个新的客户连接到达,主进程就会派生出一个ftp服务 ...
- Java并发编程原理与实战二十九:Exchanger
一.简介 前面三篇博客分别介绍了CyclicBarrier.CountDownLatch.Semaphore,现在介绍并发工具类中的最后一个Exchange.Exchange是最简单的也是最复杂的,简 ...
随机推荐
- hdu3966 Aragorn's Story 树链剖分
题目传送门 题目大意: 有n个兵营形成一棵树,给出q次操作,每一次操作可以使两个兵营之间的所有兵营的人数增加或者减少同一个数目,每次查询输出某一个兵营的人数. 思路: 树链剖分模板题,讲一下树链剖分过 ...
- java的Spring学习2- junit和mock
<!-- 引用Mock --> <dependency> <groupId>org.mockito</groupId> <artifactId&g ...
- [转] Emmet-前端开发神器
[From] https://segmentfault.com/a/1190000007812543 Emmet是一款编辑器插件,支持多种编辑器支持.在前端开发中,Emmet 使用缩写语法快速编写 H ...
- Eclipse for PHP Developers 配置记录
[原文发表在 http://osworld.sinaapp.com/post/18.html] 图都粘贴不了,直接看上面的原文吧~~~ 我比较懒,还是比较依赖IDE环境做开发的.所以为了学PHP开发, ...
- Oracle "set define off" 关闭替代变量功能
set define off关闭替代变量功能 在SQL*Plus中默认的"&"表示替代变量,也就是说,只要在命令中出现该符号,SQL*Plus就会要你输入替代值.这就意味着 ...
- async中series的实现 javascript构件
//同步流程 var series=function(arr){ function async(i){ arr[i](function(){ if(1+i<arr.length){ async( ...
- 升级TeeChart pro
teechart 安装流程如下: 1. 将生成的 LIB中的 选中文件copy到C:\Users\Public\Documents\RAD Studio\8.0\Dcp 图1 1. fastrep ...
- java多线程-Lock
大纲: Lock接口 synchronized&Lock异同 一.Lock public interface Lock { void lock(); void lockInterruptibl ...
- android点击桌面App图标activity启动流程
1.点击桌面App图标,Launcher进程采用Binder IPC向system_server进程发起startActivity请求:2.system_server进程接收到请求后,向zygote进 ...
- 常用sql语句整理[MySql]
查看执行计划 explain update test100 set contractSn=99 where contractSn=45; insert ... on duplicate key使用 i ...