`

配置Apache 虚拟主机支持二级域名的两种方法

 
阅读更多
Apache配置虚拟目录和二级域名http://skyfen.iteye.com/blog/515221

原文:http://wenku.baidu.com/view/0f292120a5e9856a56126018.html?re=view

方法一. 利用 Apache 的 mod_vhost_alias
引用:

   
#LoadModule vhost_alias_module modules/mod_vhost_alias.so 去掉前面的#
    <VirtualHost 127.0.0.1:80>
        ServerAdmin hhyisw@163.com
        ServerName x.com
        UseCanonicalName Off
        VirtualDocumentRoot /www/%1.1/%1.1%1.2/%0
    </VirtualHost>

    这样的话域名: www.x.com 指向 /www/w/ww/www.x.com
    域名:bottle.x.com 指向 /www/b/bo/bottle.x.com

    而且新建站分只要建相应目录就可以了,比如新建 new.x.com
    那么只要创建目录 /www/n/ne/new.x.com

我测试通过的案例
#add by lzk
<VirtualHost 127.0.0.1:8080>
ServerAdmin hhyisw@163.com
	ServerName testweb.com
	UseCanonicalName Off
	VirtualDocumentRoot E:/FSM-CMS2_WS_2008/WS_Projects/fsmcms_app/trunk/com.fsm.cms.war/war/publish/%1
</VirtualHost>
#需要开放目录权限,否则在访问的时候会提示无权限访问
<Directory "E:/FSM-CMS2_WS_2008/WS_Projects/fsmcms_app/trunk/com.fsm.cms.war/war/publish/">
    #
    # Possible values for the Options directive are "None", "All",
    # or any combination of:
    #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
    #
    # Note that "MultiViews" must be named *explicitly* --- "Options All"
    # doesn't give it to you.
    #
    # The Options directive is both complicated and important.  Please see
    # http://httpd.apache.org/docs/2.2/mod/core.html#options
    # for more information.
#
    Options Indexes FollowSymLinks

    #
    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be "All", "None", or any combination of the keywords:
    #   Options FileInfo AuthConfig Limit
    #
    AllowOverride None

    #
    # Controls who can get stuff from this server.
    #
    Order allow,deny
    Allow from all
</Directory>
#add by lzk


如果输入test1.testweb.com,则对应E:/FSM-CMS2_WS_2008/WS_Projects/fsmcms_app/trunk/com.fsm.cms.war/war/publish/test1
如果输入test2.testweb.com,则对应E:/FSM-CMS2_WS_2008/WS_Projects/fsmcms_app/trunk/com.fsm.cms.war/war/publish/test2

    说明:
    %0 = 完整的域名 ex: www.stksky.com
    %1 = www
    %1+ = www.stksky.com
    %1.1 = w
    %1.2 = w
    %1.3 = w
    %2 = stksky
    %3+ = stksky.com
    %2.1 = s
    %2.2 = t
    %2.3 = k
    …….
    %3 = com
    %3+ = com
    %3.1 = c
    …….

方法二. 利用 Apache 的 rewrite_module
引用:

    首先,你的拥有一个有泛域名解析的顶级域名,例如: domain.com
    其次,在 httpd.conf 中打开 mod_rewrite
    之后,在 httpd.conf 的最后,添加以下内容:

   
RewriteEngine on
    RewriteMap lowercase int:tolower
    RewriteMap vhost txt:/usr/local/etc/apache/vhost.map
    RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$
    RewriteCond ${vhost:%1} ^(/.*)$
分享到:
评论

相关推荐

    最简单快速的Apache二级域名实现方法介绍

    本文将详细介绍一种最简单快速的方法来实现Apache二级域名。 首先,你需要确保你的顶级域名(如 `domain.com`)已经进行了泛域名解析。泛域名解析意味着任何子域名(如 `www`, `bbs`, `anyname`)都将指向同一IP...

    apache配置文件详解

    - **作用**: 通过域名或IP地址来区分不同的网站,每个虚拟主机都可以有自己的独立配置。 **5.2 IfModule** - **说明**: IfModule指令用于条件性地包含配置块,根据服务器是否加载了特定模块来决定是否应用其中的...

    Apache中文文档中文注解

    - 可以通过`&lt;VirtualHost&gt;`块来定义不同的虚拟主机,支持基于IP、基于端口以及基于域名等多种类型。 #### 三、关键配置选项详解 1. **ServerRoot** - 定义了Apache服务器根目录的位置,例如:`ServerRoot "/etc/...

    Apache服务器.pdf

    本文将详细介绍Apache服务器的基本配置步骤,并深入探讨一些高级配置选项,如虚拟主机配置、用户认证等。 #### 二、软件包的下载、编译与安装 ##### 1. 下载地址 - **官方下载网站**:访问[http://www.apache.org]...

    Apache负载均衡实现

    Apache负载均衡实现是一种高效的方法,用于在多台服务器之间分散网络流量,以提高系统的可用性和响应速度。在本文中,我们将深入探讨如何使用Apache HTTP Server作为反向代理,实现负载均衡的功能。 首先,Apache ...

    apache将不带www域名301重定向到带www的域名的配置方法

    搜索引擎对顶级域名和二级域名(如`www`前缀)的权重判定存在差异。因此,统一网站入口变得尤为重要。通过将所有访问重定向到单个域名版本,可以确保网站权重集中在一个地方,有利于SEO优化,提高搜索排名。 #### ...

    linux下apache+web服务器搭建教程.pdf

    5. 虚拟主机:一个Apache服务器可以托管多个网站,每个网站有自己的域名和配置。 6. 认证机制:Apache支持多种身份验证方式,确保只有授权用户可以访问特定资源。 7. Perl集成:可以集成Perl脚本语言,增强服务器...

    apache2.2文档.rar

    5. **虚拟主机**:Apache 2.2支持多个虚拟主机在同一服务器上运行,每个虚拟主机可以独立配置域名、文档根目录和访问控制。 二、配置文件与指令 1. **httpd.conf**:主配置文件,定义了服务器的基本设置,如监听...

    apache_1.3.23.tar.gz

    3. **虚拟主机**:Apache支持在同一台服务器上托管多个网站,每个网站可以有自己的域名和配置。 4. **URL重写**:通过mod_rewrite模块,可以实现URL重定向和路径转换,便于实现SEO优化和动态网站静态化。 5. **...

    Linux下_httpd.conf_配置详解.doc

    5. 虚拟主机:一个Apache服务器可以托管多个独立的网站,每个网站有自己的域名和配置。 6. HTTP认证:可以对访问者进行身份验证,保护网站内容的安全。 7. PERL集成:Apache可以与PERL脚本语言结合,扩展服务器功能...

    Apache与Tomcat集成,资源是已经集成好的,可以参考

    3. **配置Apache虚拟主机**:在httpd-vhosts.conf或httpd.conf中添加一个新的虚拟主机,设置监听端口和DocumentRoot。例如: ``` *:80&gt; ServerName yourdomain.com DocumentRoot "/path/to/your/static/files" ...

    apache2 中文手册

    - 多域名支持:Apache可以配置为同时托管多个网站,每个网站有自己的域名,通过VirtualHost指令实现。 4. **模块管理**: - 动态加载:Apache支持模块化设计,可以根据需求加载或卸载模块,如mod_rewrite用于URL...

    三大WEB服务器对比分析(apache-apache-nginx)

    5. **虚拟主机支持**:允许在同一台服务器上托管多个域名。 6. **HTTP认证**:提供安全认证机制。 7. **集成Perl**:支持Perl脚本的集成。 8. **代理服务器功能**:内置代理服务器,支持HTTP代理和反向代理。 9. **...

    httpd.zip

    1. 虚拟主机:Apache支持在同一服务器上运行多个独立的网站,通过`NameVirtualHost`和`&lt;VirtualHost&gt;`指令配置不同域名的虚拟主机。 五、安全与性能优化 1. SSL/TLS:Apache可以通过`mod_ssl`模块支持HTTPS协议,...

    apche官方简体中文完全攻略

    Apache的日志记录分为两种类型:访问日志(access logs)记录客户端请求,错误日志(error logs)记录服务器遇到的问题。日志格式和存储位置可通过配置文件中的LogFormat和CustomLog指令进行设置。 六、安全与性能...

    浅析linux下apache服务器的配置和管理

    - `VirtualHosts` - 通过虚拟主机配置,一台服务器可以托管多个域名和网站。 - `RewriteEngine` - URL重写功能,可以用于实现URL美化,SEO优化等。 - `LoadModule` - 加载额外的模块以扩展Apache的功能,如SSL支持、...

    linux实验指导书

    4. **设置虚拟主机**:在Apache配置文件中添加虚拟主机定义,指定不同的域名对应各自的文档根目录。 5. **DNS服务器配置**:使用BIND或其他DNS软件,在Linux系统上配置DNS服务器,设置区域文件、转发规则等。 6. **...

Global site tag (gtag.js) - Google Analytics