LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 694|回复: 1

多域名绑定多目录[zt]

[复制链接]
发表于 2005-4-24 08:39:21 | 显示全部楼层 |阅读模式
转自 http://bbs.chinaunix.net/forum/v ... ght=rewrite#3310539

一个服务器

用ServerAlias标签就可以给一个虚拟机绑定N个域名!!
<VirtualHost *>
ServerName www.aaa.com
ServerAlias www.bbb.com
ServerAlias www.ccc.com
......
ServerAlias www.NNN.com
DocumentRoot /var/www/htdocs
</VirtualHost>
这种方法只能绑定多域名到同一个目录!并且还要重新启动apache!

修改httpd.conf
virtualhost 项(最后)

ServerAdmin webmaster@esky.com.ru
ServerName pic.esky.com.ru
serveralias *.esky.com.ru
# *就变成了泛域名
DocumentRoot E:/Web/WwwRoot/pic_esky_com_ru/WwwRoot
这种方法只能绑定一个顶级域名!

编辑httpd.conf
在最后加上
NameVirtualHost *

<VirtualHost *>
rewriteengine on
rewritecond %{HTTP_HOST} [^.]+\.alibaba\.uni\.cc$
rewriterule ^(.+) %{HTTP_HOST}$1 [C]
rewriterule ([^.]+)\.alibaba\.uni\.cc(.*) /$1$2
ServerAdmin webmaster@XXX.COM
DocumentRoot /www
ServerName alibaba.uni.cc
ErrorLog logs/alibaba.uni.cc-error_log
CustomLog logs/alibaba.uni.cc-access_log common
</VirtualHost>
将http://username.alibaba.uni.cc对于username的主页请求转换为对http://alibaba.uni.cc/username的请求
---- 对于HTTP/1.1的请求包括一个Host: HTTP头,我们能用下面的规则集重写 http://username.alibaba.uni.cc/anypath到/home/username/anypath
注: “rewritecond”表明是条件重写规则,当满足后面定义的条件后才会应用下面的重写规则,“rewritecond”有各种变量,请查阅相关文档。

这种方法是绑定多个二级域名!
 楼主| 发表于 2005-4-24 08:44:58 | 显示全部楼层
使用mod_rewrite的虚拟主机系统[zt]
http://bbs.chinaunix.net/forum/v ... ght=rewrite#1956487

RewriteEngine on

RewriteMap lowercase int:tolower

# 检查 hostname 正确与否,之后才能使 RewriteRule 起作用
RewriteCond ${lowercase:%{SERVER_NAME}} ^www\.[a-z-]+\.isp\.com$

# 将虚拟主机名字链接到 URI 的开头
# [C] 表明本次重写的结果将在下一个 rewrite 规则中使用
RewriteRule ^(.+) ${lowercase:%{SERVER_NAME}}$1 [C]

# 现在创建实际的文件名
RewriteRule ^www\.([a-z-]+)\.isp\.com/(.*) /home/$1/$2
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表