好记性不如烂笔头,呵呵,先写下来以免到时需要的时候忘记!
开启rewrite模式那些就省略了~~~,直接上配置(windows主机)
如果是linux或者虚拟主机,路径方面需要改一下 如RewriteMap vhost txt:/usr/local/etc/apache/vhost.map,RewriteCond ${vhost:%1} ^(/.*)$
以下配置添加到httpd.conf的末尾或VirtualHost中
RewriteLog logs/rewrite.log
RewriteLogLevel 0
RewriteEngine on
RewriteMap lowercase int:tolower
RewriteMap vhost txt:C:/AppServ/Apache2.2/conf/vhost.map
RewriteCond ${lowercase:%{HTTP_HOST}|NONE} ^(.+)$
RewriteCond ${vhost:%1} ^(D:/.*)$
RewriteRule ^/(.*)$ %1/$1 [E=VHOST:${lowercase:%{HTTP_HOST}}]
说明:
a.正则^(.+)$ 要和vhost.map的第一部分匹配,在这个例子中^(.+)$是可以匹配book.tiyan.com的
b.正则^(C:/.*)$要和vhost.map的第二部分匹配,在这个例子中^(C:/.*)$是可以匹配C:/AppServ/www/book的
c.RewriteCond ${vhost:%1} ^(C:/.*)$
把盘符C:加入到正则中,如果您的web文件不是放在C盘而是E盘,要把C:改为E:
随时更改 vhost.map 来增加、删除、修改你的域名和所指向的实际路径,不用重启 apache
vhost.map
内容如下:
book.tiyan.com C:/AppServ/www/book
xxx.tiyan.com C:/AppServ/www/xxx