`
qwjcool
  • 浏览: 69385 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

在apache下配置虚拟主机

阅读更多

这之前我一直以为搞虚拟主机是很高深的技术(可能在apache2.2以前是很困难的,我也没有专门调查过),自己尝试了一下,原来很简单。

在apache的配置文件目录里,找到 extra 目录,你会发现 httpd-vhosts.conf 文件,打开文件一看,你会发现以下内容(注释已经省略)

NameVirtualHost *:80

ServerAdmin webmaster@dummy-host.robert.qiu.com
DocumentRoot "/www/docs/dummy-host.robert.qiu.com"
ServerName dummy-host.robert.qiu.com
ServerAlias www.dummy-host.robert.qiu.com
ErrorLog "logs/dummy-host.robert.qiu.com-error_log"
CustomLog "logs/dummy-host.robert.qiu.com-access_log common"


ServerAdmin webmaster@dummy-host2.robert.qiu.com
DocumentRoot "/www/docs/dummy-host2.robert.qiu.com"
ServerName dummy-host2.robert.qiu.com
ErrorLog "logs/dummy-host2.robert.qiu.com-error_log"
CustomLog "logs/dummy-host2.robert.qiu.com-access_log common"

在这一堆配置信息中实际上我们只要注意以下内容既可(序号是我加上去的,注意,配置文件的原文)

1. NameVirtualHost *:80

2.

...

3. DocumentRoot "/www/docs/dummy-host.robert.qiu.com"

4. ServerName dummy-host.robert.qiu.com

...

第一句表示apache针对本服务器某个ip地址和端口,进行虚拟主机设置。听上去有些拗口,举个例子,如果服务器有2个ip,192.168.1.1,192.168.1.2,那么如果第一条设置成 NameVirtualHost 192.168.1.1:80 , 那么,只有针对192.168.1.1这个ip的请求才能按照下面虚拟主机的设置得到处理,比如:http://192.168.1.1/filename。在这里设置为*:80,则表示无论请求的ip是多少都能得到处理,因为你的服务器放到不同的局域网里可能分到的ip不同,设置成这样就不需要修改了。

第二句 配套第一句使用,即对虚拟主机进行具体的配置,其中的*:80含义和上面一句相同。

第三句 表示这个虚拟主机的文件根目录所在位置,它的意思和主配置文件httpd.conf中的一样

第四句 这是配置的关键,表示从客户端的请求所定义的服务器名,将得到服务器的处理。这里我一开始也不明白,上面不是设置了ip吗,为什么这里还要设置机器名。所谓虚拟主机就是一个台服务器能够当成N台服务器使用,那在internet上,一台服务器外网只有一个ip,如果一台服务器的外网ip是111.111.111.111,那么我们第一句就可以设定为 NameVirtualHost 111.111.111.111:80 ,来响应客户端的请求,当然设置成*:80,也可以。由于dns的作用,我们可以用n个域名指向111.111.111.111,比如 www.domain1.com, www.domain2.com, www.domain3.com... 但是当你用这些域名访问的时候会发现,你打开的都是同一个页面(当然是在设置虚拟主机之前)。如果你想用不同的域名访问不同的内容,那么必须有一个功能来根据你不同的域名来定位不同的资源,于是ServerName 这个命令就起作用了。所以整个2-4句的作用就是把对 dummy-host.robert.qiu.com 请求映射到 /www/docs/dummy-host.robert.qiu.com 目录中

NameVirtualHost *:80

ServerAdmin webmaster@domain1.com
DocumentRoot "/www/domain1"
ServerName www.domain1.com
ServerAlias www.domain1.com
ErrorLog "logs/domain1-error_log"
CustomLog "logs/domain1-access_log common"


ServerAdmin webmaster@domain2.com
DocumentRoot "/www/domain2.com"
ServerName www.domain2.com
ErrorLog "logs/domain2.com-error_log"
CustomLog "logs/domain2.com-access_log common"


ServerAdmin webmaster@domain3.com
DocumentRoot "/www/domain3.com"
ServerName www.domain3.com
ErrorLog "logs/domain3.com-error_log"
CustomLog "logs/domain3.com-access_log common"

按照上面的分析,上面的这些配置信息就配置除了

www.domain1.com

www.domain2.com

www.domain3.com

三台虚拟主机了

分享到:
评论

相关推荐

    apache配置虚拟主机代码

    在Apache中配置虚拟主机允许你在一个物理服务器上运行多个网站,从而提高了资源利用率并降低了运维成本。下面我们将详细介绍如何配置Apache虚拟主机。 1. **虚拟主机类型** Apache支持两种类型的虚拟主机:基于...

    linux下apache虚拟主机的配置方法

    接下来,在`/etc/apache2/sites-available`目录中配置虚拟主机。首先,复制现有的虚拟主机配置作为模板,并将其中的监听端口号由80改为8080。例如: ```apacheconf *:8080> # 这里填写新虚拟主机的配置信息 ``` 此...

    Apache虚拟主机配置

    本文将深入解析如何在Apache下配置虚拟主机,涵盖从基本设置到高级选项的全方位指南。 #### 一、备份与编辑配置文件 在进行任何配置更改前,备份当前的`httpd.conf`文件至关重要,以防万一配置错误时能够快速恢复...

    ubuntu下配置apache虚拟主机(原创)

    Ubuntu 下配置 Apache 虚拟主机 ...配置虚拟主机需要我们具备一定的 Apache 服务器配置知识和 Ubuntu 操作系统使用经验。但是,通过本文的步骤和解释,我们可以轻松地配置虚拟主机,提高服务器的利用率和灵活性。

    编译安装apache并配置虚拟主机,其中的虚拟配置文件

    编译安装apache并配置虚拟主机,其中的虚拟配置文件

    apache虚拟主机配置

    在Apache中,虚拟主机可以通过基于名称、基于IP或基于端口的方式进行配置。 #### 二、核心模块加载 在Apache的主配置文件`httpd.conf`中,需要加载一系列核心模块来支持虚拟主机和其他功能: 1. **`LoadModule ...

    本地机apache配置基于域名的虚拟主机

    在本教程中,我们将探讨如何在本地计算机上配置Apache以实现基于域名的虚拟主机,这对于开发多站点项目或者进行网站测试非常有用。 首先,我们需要了解什么是基于域名的虚拟主机。在一台物理服务器上,可以设置多个...

    apache配置虚拟主机

    Apache 虚拟主机配置是Web服务器管理中的一个重要环节,允许在一个单一的Apache实例上运行多个独立的网站。Apache虚拟主机允许通过IP地址、端口或域名来区分不同的站点,从而提高了服务器资源的有效利用和管理效率。...

    apache三种虚拟主机的配置

    Apache是一款广泛使用的Web服务器软件,它支持多种虚拟主机的配置方式,使得在同一台物理服务器上可以运行多个不同的网站或应用程序。根据给定文件的信息,本文将详细介绍Apache的三种虚拟主机配置方式:基于名称的...

    Apache服务器虚拟主机虚拟目录配置

    资源名称:Apache服务器虚拟主机虚拟目录配置   资源截图: 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。

    Apache虚拟主机配置文件

    Apache虚拟主机配置文件 httpd-vhosts.comf

    lamp环境配置apache虚拟主机

    此文档适用于lamp环境apache虚拟主机的搭建,使用lamp环境搭建虚拟主机的新手,可以参看此文档。

    Apache虚拟主机.ppt

    具体的Apache虚拟主机配置,详细描述Apache虚拟主机的配置过程及原理

    如何在本地配置虚拟主机

    如何在本地配置虚拟主机 Apache服务器,三步即可设置成功

    apache虚拟目录和虚拟主机设置详解

    ### Apache虚拟目录和虚拟...总之,Apache的虚拟目录和虚拟主机配置提供了强大的功能,使得服务器管理和网站部署变得更加高效和安全。通过合理地利用这些特性,可以显著提升网站的性能和用户体验,同时降低运维成本。

    php+apache虚拟主机配置.rar

    3. **配置虚拟主机**: 虚拟主机允许你在同一台服务器上托管多个独立的网站。在Apache的配置文件中,你可以创建一个新的虚拟主机配置段。例如: ```apache *:80> ServerName example.com DocumentRoot /var/...

    windows2003下apache配置虚拟主机和绑定域名服务.doc

    #### 2.3 配置虚拟主机 - 继续在httpd.conf文件中添加以下内容: ```apache DocumentRoot "E:/webroot/myenjoylife" ServerName www.myenjoylife.cn DirectoryIndex index....

    linux apache下虚拟主机配置方法

    本节将详细介绍如何在Apache下配置虚拟主机,使两个不同的域名(例如:domain1.com 和 domain2.com)指向同一个IP地址(58.130.17.168),并且每个域名都能访问到各自的网站内容。 - **步骤1:编辑httpd.conf文件**...

Global site tag (gtag.js) - Google Analytics