Apache Mod_Rewrite 实例 - 在 httpd 中将一个域名转发到另一个域名
2006年07月11日 00:25 • 查看 2,690 次 • 打印本文站长世界近期更换了域名,新域名为 www.zzvo.com, 更加简短好记。这时需要将原来的域名 zz-world.com, 以及论坛所在地址 zz-world.com/forums/ 定向到新的域名,以便用户可以找到,并且使原来的论坛 URL 继续有效而不出现 404 未找到,比如原来的 http://www.zz-world.com/forums/-f60.html, 让它在新的域名下继续有效,点击后转发到 http://bbs.zzvo.com/-f60.html, 这就需要用 apache 的 Mod_rewrite 功能来实现。
在< virtualhost> 中添加下面的重定向规则:
RewriteEngine On
# Redirect zz-world.com/forums to bbs.zzvo.com
RewriteCond %{REQUEST_URI} ^/forums/
RewriteRule /forums/(.*) http://bbs.zzvo.com/$1 [R=permanent,L]
# Redirect zz-world.com to zzvo.com
RewriteCond %{REQUEST_URI} !^/forums/
RewriteRule /(.*) http://www.zzvo.com/$1 [R=permanent,L]
添加了上面的规则以后, 里的全部内容如下:
< virtualhost *:80>
ServerAlias zz-world.com
ServerAdmin admin@zz-world.com
DocumentRoot /path/to/zz-world/root
ServerName www.zz-world.com
RewriteEngine On
# Redirect zz-world.com/forums to bbs.zzvo.com
RewriteCond %{REQUEST_URI} ^/forums/
RewriteRule /forums/(.*) http://bbs.zzvo.com/$1 [R=permanent,L]
# Redirect zz-world.com to zzvo.com
RewriteCond %{REQUEST_URI} !^/forums/
RewriteRule /(.*) http://www.zzvo.com/$1 [R=permanent,L]
< /virtualhost>
评论
发表评论