`
lenxen
  • 浏览: 31580 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

Apache绑定多个域名以及二级域名的方法 Rewrite使用

阅读更多

Apache绑定多个域名以及二级域名的方法 Rewrite使用

在项目中经常要用到一个多个二级域名站点,那么有没有好用的管理方便的架设方法!

下面以最近在做的天气预报15天查询(http://tqybw.net)项目为例,给大家一个做一个示例说明!

首先,你要有一个泛解析的顶级域名 tqybw.net

在后台添加一条A记录*.tqybw.net

 

打开http.conf 

在文件尾部添加NameVirtualHost * 

简单的添加: 

<VirtualHost *> 

DocumentRoot /usr/local/www 

ServerName tqybw.net 

ServerAlias *.tqybw.net 

RewriteEngine on 

RewriteMap lowercase int:tolower 

RewriteMap vhost txt:/usr/local/apache2/conf/vhost.map 

RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$ 

RewriteCond ${vhost:%1} ^(/.*)$ 

RewriteRule ^/(.*)$ %1/$1 

</VirtualHost>

 

注:其中/usr/local/apache2/conf/为你的apache的配置文件夹根据实际情况修改

 

进入配置文件目录新建vhost.map文件,添加内容如下: 

www.tqybw.net /usr/local/www 

bbs.tqybw.net /usr/local/www/bbs 

blog.tqybw.net /usr/local/www/blog

 

启动或重启一次apache

 

打开浏览器 

输入www.tqybw.net将访问到/usr/local/www下的内容 

输入bbs.tqybw.net将访问到/usr/local/www/bbs下的内容 

依次类推。。。 

理论上可以设无限个二级域名,而且不用重启服务器

 

http://www.tqybw.net直接到根目录下

 

别的二级域名如

xyz.tqybw.net到根目录下的xyz目录。

 

实现:

配置apache的http.conf文件,

->取消164行LoadModule rewrite_module modules/mod_rewrite.so前的#号

->文件最后

RewriteEngine on

 

RewriteCond %{HTTP_HOST} ^www\.tqybw\.net$ 

RewriteRule ^(.+) /$1 [L]

 

RewriteCond %{HTTP_HOST} [^.]+\.tqybw\.net$ 

RewriteRule ^(.+) %{HTTP_HOST}$1 [C] 

RewriteRule ([^.]+)\.tqybw\.net(.*) /$1$2

 

# 配置 Apache重定向模块 用于二级域名解析

RewriteEngine on

 

# 主站,url是http://www.tqybw.net

RewriteCond %{HTTP_HOST} ^www\.tqybw\.net$ 

RewriteRule ^(.+) /$1 [L]

 

# 专业子站 url是gongsi.tqybw.net/

# 专业子站,进入 例如 specialty/gongsi/ 这样的子目录,但是,如果是找js,css,upload等,则再度返回主站目录

RewriteCond %{HTTP_HOST} ^(gongsi|fangdichan|haishang|hunyin|jianshe|jingji|jingrong|laodong|shewai|sunhai)\.tqybw\.net$ 

RewriteRule ^(.+) %{HTTP_HOST}$1 [C] 

RewriteRule ([^.]+)\.tqybw\.net(.*) /specialty/$1$2 [C]

RewriteRule /specialty/[^/]+/(ajax|cp|css|fckeditor|images|js|upload)/(.+) /$1/$2 [L]

 

# 地区分站 url是qiche.tqybw.net

# 地区分站,进入 例如 area/nanjing/ 这样的子目录,但是,如果是找js,css,upload等,则再度返回主站目录

RewriteCond %{HTTP_HOST} ^([^.]+)law\.abc\.com$ 

RewriteRule ^(.+) %{HTTP_HOST}$1 [C] 

RewriteRule ([^.]+)law\.tqybw\.net(.*) /area/$1$2 [C] 

RewriteRule /area/[^/]+/(ajax|cp|css|fckeditor|images|js|upload)/(.+) /$1/$2 [L]

 

# 博客 url是youjia.tqybw.net/

# 博客,进入 例如 blog/z/h/angsan/ 这样的子目录,但是,如果是找js,css,upload等,则再度返回主站目录

RewriteCond %{HTTP_HOST} [^.]+\.tqybw\.net$ 

RewriteRule ^(.+) %{HTTP_HOST}$1 [C] 

RewriteRule (a-z0-9)(a-z0-9)([^.]+)\.xieye\.com(.*) /blog/$1/$2/$3$4 

RewriteRule /blog/[^/]+/[^/]+/[^/]+/(ajax|cp|css|fckeditor|images|js|upload)/(.+) /$1/$2 [L]

 

注:

 

需要模块

LoadModule proxy_module modules/mod_proxy.so

LoadModule rewrite_module modules/mod_rewrite.so

$1/$2 [P] 改成P 就是用隐藏, 需要上面的mod_proxy.so

分享到:
评论

相关推荐

    一个空间放多个网站(多域名绑定到同一空间不同目录.rar

    通过以上步骤,我们可以在一个服务器上设置多个网站,实现多域名绑定到同一空间的不同目录,从而高效地管理与运营多个Web项目。这个过程既涉及了服务器配置,也包括了DNS解析和网站安全策略,对于任何希望提升服务器...

    百度知道泛解析无限二级域名

    站群系统是指由多个相互关联的网站组成的一个网络,这些网站通常共享同一个主域名,但拥有不同的二级域名,以此扩大网络影响力,提高搜索引擎排名。 首先,我们需要了解什么是泛解析。泛解析是DNS(域名系统)设置...

    二级域名管理插件(实现URL隐藏转发) for Discuz!7.2 GBK UTF8.rar

     本插件主要给使用虚拟主机的站长提供一个虚拟空间,建多个站,一个站绑定多个二级域名的功能。实现URL的隐藏转发,例如:bbs.itopapp.com绑定到虚拟主机上的bbs目录,浏览器中不会跳转到...

    《Apache服务器配置与使用工作笔记》.(王江伟).[PDF].&ckook;

    - **基于域名**:通过配置不同的域名指向同一台服务器的不同目录来实现多个网站共存。 - **基于IP地址**:每个网站绑定不同的IP地址,实现多个网站在同一台物理服务器上运行。 - **基于端口号**:为不同的网站分配...

    Apache 2.2 中文版参考手册

    - **多路处理模块(MPM)**:控制Apache如何处理多个并发连接,包括`prefork`、`worker` 和 `event` 等。 - **过滤器**:处理数据流,如 `mod_deflate` 用于压缩响应。 - **处理器**:负责解析和处理特定类型的...

    Nginx教程从入门到精通到失业

    - **变量使用方法详解**:分多个部分详细解释 Nginx 中各种变量的使用方法,包括 `$var`, `$arg_var`, `$http_var` 等。 #### 二十一、Nginx 模块与案例 - **安装第三方模块**:介绍如何安装 Nginx 第三方模块,...

    ThinkPHP 3.1.2 - PHP的开发框架MVC - 含Core,Extend,Example

    还可以支持对分组的二级域名部署支持。 模板引擎:系统内建了一款卓越的基于XML的编译型模板引擎,支持两种类型的 模板标签,融合了Smarty和JSP标签库的思想,并内置布局模板功能和标签库扩展 支持。通过驱动还可以...

Global site tag (gtag.js) - Google Analytics