Apache 虚拟主机 VirtualHost 配置

为什么80%的码农都做不了架构师?>>>   hot3.png

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

Apache 是世界上使用最广的 Web 服务器, 从 1.1 版开始支持虚拟主机. 本文将讲解在不同服务器 (Redhat Enterprise Linux, Ubuntu Linux, Windows) 上使用 Apache 搭建虚拟主机来搭建多个网站.

主旨

本文旨在让读者知道如何在同一台机器上搭建多个网站, 并附带一些使用技巧. 以操作为主, 不会过多谈及原理.

目标

本文是写给拥有一定的服务器配置和管理技能, 工作中需要同时维护多个网站的网站主, 网站开发者和网络管理员. 如果你是互联网公司的配管工程师, 对计算机服务器原理和操作十分熟悉, 请忽视本文, 你不会在上面找到太多有价值的东西.

Redhat Enterprise Linux

Redhat Enterprise Linux (包括 CentOS Linux), 是使用最广的 Linux 服务器, 大量的网站应用都部署在其上.

1. 打开文件 /etc/httpd/conf/httpd.conf, 搜索 VirtualHost example, 找到代码如下:

#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for requests without a known
# server name.
#
#<VirtualHost *:80>
#    ServerAdmin webmaster@dummy-host.example.com
#    DocumentRoot /www/docs/dummy-host.example.com
#    ServerName dummy-host.example.com
#    ErrorLog logs/dummy-host.example.com-error_log
#    CustomLog logs/dummy-host.example.com-access_log common
#</VirtualHost>

2. 仿照例子, 添加一段代码来指定某一域名的网站.

#
# DocumentRoot 是网站文件存放的根目录
# ServerName 是网站域名, 需要跟 DNS 指向的域名一致
#
<VirtualHost *:80>ServerAdmin zhao.wuz@alibaba-inc.comDocumentRoot /var/www/httpdocs/demo_aliluna_comServerName demo.aliluna.comErrorLog logs/demo.aliluna.com-error.logCustomLog logs/demo.aliluna.com-access.log common
</VirtualHost>

3. 重启 httpd 服务, 执行以下语句.

service httpd restart

Ubuntu Linux

Ubuntu 在 Linux 各发行版中, 个人用户数量最多的. 很多人在本机和虚拟机中使用. 但 Ubuntu 和 Redhat 的 VirtualHost 设置方法不相同.

1. 打开目录 /etc/apache2/sites-available/, 发现 default 和 default-ssl 两个文件, 其中 default 是 http 虚拟主机服务的配置文件, default-ssl 是配置 https 服务使用的. 可以复制一份 default 文件. 并修改配置文件名, 文件名必须与域名一致 (如: demo.aliluna.com)

2. 打开新建的配置文件, 修改 DocumentRoot, ServerName 和对应的配置目录. 例子如下:

#
# DocumentRoot 是网站文件存放的根目录
# ServerName 是网站域名, 需要跟 DNS 指向的域名一致
#
<VirtualHost *:80>ServerAdmin zhao.wuz@alibaba-inc.comDocumentRoot /var/www/httpdocs/demo_aliluna_comServerName demo.aliluna.comErrorLog ${APACHE_LOG_DIR}/demo.aliluna.com-error.logCustomLog ${APACHE_LOG_DIR}/demo.aliluna.com-access.log combined
</VirtualHost>

3. 通过 a2ensite 激活虚拟主机配置

sudo a2ensite demo.aliluna.com

4. 打开目录 /etc/apache2/sites-enabled/, 你会发现所有激活的虚拟主机, 可以通过 a2dissite 进行注销

sudo a2dissite demo.aliluna.com

5. 重启 Apache 服务, 激活虚拟主机

sudo /etc/init.d/apache2 restart

Windows

Windows 是市场占有率最高的 PC 操作系统, 也是很多人的开发环境. 其 VirtualHost 配置方法与 Linux 上有些差异, 以下方式适合原生 Apache, XAMPP 和 WAMP 套件.

1. 打开目录 {Apache2 安装目录}\conf\extra\, 找到 httpd-vhosts.conf 文件.

2. 仿照例子, 添加一段代码来指定某一域名的网站.

#
# DocumentRoot 是网站文件存放的根目录
# ServerName 是网站域名, 需要跟 DNS 指向的域名一致
#
<VirtualHost *:80>ServerAdmin zhao.wuz@alibaba-inc.comDocumentRoot "D:/workspace/php/demo_aliluna_com"     ServerName demo.aliluna.comErrorLog "logs/demo.aliluna.com-error.log"     CustomLog "logs/demo.aliluna.com-access.log" common
</VirtualHost>

3. 打开 httpd.conf 文件, 添加如下语句.

# Virtual hosts
Include conf/extra/httpd-vhosts.conf

4. 重启 Apache 服务.

总结

最近我在不同的几台服务器上搭建了一些网站服务, 这篇文章也算是我的个人笔记, 望日后可自用, 也希望对读者有用. 文中介绍了几个主流开发和部署环境上配置虚拟主机的方法, 其他 OS 大同小异.

转载于:https://my.oschina.net/341200/blog/48894

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/302816.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

IT公司老板落水,各部门员工怎么救?

公司高层公司副总A&#xff1a;咱们开个会研究一下这个事情怎么处理。公司副总B&#xff1a;如果老板没有救成功&#xff0c;下任是谁呢&#xff1f;会不会影响公司的上市&#xff1f;公司副总C&#xff1a;我认为咱们开会应该讨论两个方案&#xff0c;一个是救人方案&#xff…

这样用Docker 搭建 Jenkins 实现自动部署,你知道吗?

一、为什么用jenkins主要是我们现在的项目都是采用手动部署的&#xff0c;每当给项目中新增一个功能就必须执行(打包--测试--上传测试修复的包到指定服务器--部署上线)&#xff0c;这个流程操作起来繁杂&#xff0c;不小心就可能导致部署失败&#xff1b;急需找到一个方式来解决…

这是对R的误解!R的应用原来这么广!

R作为一种统计分析软件&#xff0c;广泛应用于生物、医学、电商、新闻等数据相关行业&#xff0c;是目前主流数据应用软件之一。为了更好地帮助大家了解并快速入门R语言&#xff0c;现超级数学建模携手柯老师以R语言为基础&#xff0c;向大家隆重推出《R语言基础》系列课。柯老…

WinDBg定位asp.net mvc项目异常崩溃源码位置

项目介绍&#xff1a;asp.net mvc angular iiswindows server系统莫名崩溃最近有个系统默认奇妙崩溃50x&#xff0c;服务整体变成无响应&#xff0c;当运维告知我只有重启应用程序池项目才能正常。我问他如何重现&#xff0c;得到的回复是我这里无法重现&#xff0c;但客户使用…

mysql如何和qt连接使用_Qt5学习:连接MySQL数据库

一、环境QT版本&#xff1a;QT 5.8.0(msvc2013_64)MySQL版本&#xff1a;mysql 5.7.19二、配置之前 mysql 数据库一直都连接不上&#xff0c;网上也搜了很多资料&#xff0c;主要还是库文件的问题。重新将 mysql.pro 编译一下&#xff0c;将生成的 .dll 和 .lib 文件拷贝到 QT …

TensorFlow框架的这些操作你肯定不知道!

谷歌在上周正式推出了深度学习框架TensorFlow 1.11.0 版本&#xff0c;那么TensorFlow框架到底是什么&#xff1f;TensorFlow™ 是一个采用数据流图&#xff08;data flow graphs&#xff09;&#xff0c;用于数值计算的开源软件库。最初由Google大脑小组的研究员和工程师们开发…

C#中HashTable、Dictionary、ConcurrentDictionary区别

一、HashTableHashTable表示键/值对的集合。在.NET Framework中&#xff0c;Hashtable是System.Collections命名空间提供的一个容器&#xff0c;用于处理和表现类似key-value的键值对&#xff0c;其中key通常可用来快速查找&#xff0c;同时key是区分大小写&#xff1b;value用…

CDA数据分析师备考必看,L1L2通用

CDA数据分析师L1,L2均可 可安排当月月底的线上考试 线上考的为双机位监考&#xff0c;但是不用担心 安全无隐患&#xff0c;需要联系 当月拿证

你以为妹子穿短裙真的是为了诱惑你吗?

全世界有3.14 % 的人已经关注了数据与算法之美每年暑假&#xff0c;ChinaJoy 都会火热进行&#xff0c;无数一年不出家门的宅男们扛着“长枪大炮”&#xff0c;向着短裙姑娘们就冲过去了。关于裙子&#xff0c;林语堂曾有过一句名言&#xff1a;“演讲应该像女士的裙子&#xf…

聊一聊Jmeter的参数化

背景 前面一篇聊了一下 JMeter 的简单使用&#xff0c;这篇聊一下 JMeter 的参数化。在开始之前先来一个单元测试的例子&#xff0c;感受一下参数化。上面是一个用 xUnit 写的单元测试&#xff0c;这个单元测试就是一个参数化的例子&#xff1a;模拟了不同的输入&#xff0c;调…

Android VNC Server New

Android VNC Server New 关于VNC请参见维基百科&#xff1a;http://zh.wikipedia.org/wiki/VNC关于执行Android VNC Server&#xff0c;请参见前一篇文章&#xff1a;点击链接 一、VNC下载1&#xff09;fastdroid-vncAndroid VNC Server开源项目 http://code.google.com/p/fast…

EPPlus导出Excel感觉很不错~~~

前言导出成为很多系统的必备功能&#xff0c;之前分享过导出PDF的功能&#xff0c;这里来分享一下Excel的导出&#xff1b;提到Excel导出&#xff0c;NPOI肯定是很多小伙伴的首选&#xff0c;在以往的项目中也用其完成了很多导出需求&#xff1b;对于NPOI&#xff0c;个人感觉使…

[文摘]标准的软件开发过程

为什么80%的码农都做不了架构师&#xff1f;>>> 软件开发的标准过程包括六个阶段&#xff0c;而六个阶段需要编写的各类文件达 14 种之多&#xff0c;在每个阶段需要编写哪些文件&#xff0c;以及这些文件的主要内容见下&#xff1a; 1.可行性与计划研究阶段 可行性…

走进乔布斯的大脑

全世界有3.14 % 的人已经关注了数据与算法之美你永远也无法走进苹果教父乔布斯神秘的大脑&#xff0c;但下面的图可以让你多靠近了解他一点。人们都想走进乔帮主的大脑里看看他的想法&#xff0c;可惜他太难以捉摸了。但是&#xff0c;有个有趣的方法&#xff0c;至少可以让人们…

硬货 | 一片小小的薄膜,却可以粘住全世界!

延续“设计激发积极生活”的理念&#xff0c;在这个中秋&#xff0c;GYMLIVING特别推出月亮概念新产品&#xff0c;在便利生活的同时&#xff0c;为你带来一份浪漫和惊喜&#xff01;说起月亮&#xff0c;除了阴晴圆缺&#xff0c;月球漫步更让它成了浪漫的代名词。有公司正计划…

使用域超级管理员打开Exchange 2010发现没有权限

1.使用administrator管理员打开EMC却报没有权限。 2.发现此问题&#xff0c;系邮件服务器本身上安装了outlook软件&#xff0c;并配置了使用非administrator账户收信。并有做了Windows保存了用户凭据&#xff0c;造成帐号使用上的混乱&#xff0c;导致连接Exchange服务器时使用…

C# 将多个图片合并成TIFF文件的两种方法

最近需要用到TIF格式的文件&#xff0c;研究了一段时间&#xff0c;终于有点结果了&#xff0c;发现两种方式&#xff0c;第一种是使用BitMiracle.LibTiff.NET&#xff0c;直接在Nuget上安装即可&#xff0c;第二种是使用RasterEdge.DocImageSDK&#xff0c;要从官网下载dll包第…

高等数学、线性代数、概率论与数理统计、几何学这些知识可以用来干什么?主要应用有哪些?...

全世界有3.14 % 的人已经关注了数据与算法之美知乎谢漠烟其他三项&#xff0c;不研究少数工科确实没用&#xff0c;但概率统计真乃应用数学之王。鄙人学业从数学院开始&#xff0c;以经济学院结束&#xff0c;现在在证券公司做苦逼行业研究&#xff0c;深有体会。概率统计抛开了…

HDU 2896 病毒侵袭【AC自动机】

Problem Description当太阳的光辉逐渐被月亮遮蔽&#xff0c;世界失去了光明&#xff0c;大地迎来最黑暗的时刻。。。。在这样的时刻&#xff0c;人们却异常兴奋——我们能在有生之年看到500年一遇的世界奇观&#xff0c;那是多么幸福的事儿啊~~但网路上总有那么些网站&#xf…

风靡全球的人工智能,如何赶上这班车?

目前&#xff0c;机器学习的使用日渐成为趋势。作为人工智能的核心&#xff0c;机器学习是一门多领域的交叉学科&#xff0c;专门研究计算机模拟或实现人类学习行为的方法&#xff0c;以获取新的知识或技能&#xff0c;重新组织已有的知识结构使之不断改善自身的性能。简单来说…