我如何将发往 的请求重定向http://blog.mysite.com
至http://mysite.com/blog
?
阅读 Apache 文档何时不使用重写模式,我尝试了一个简单的重定向,例如
Redirect http://blog.mysite.com http://mysite.com/blog
但当我访问http://blog.mysite.com,它没有重定向我。有什么建议吗?
答案1
您能做点不同的事情<VirtualHost>
吗blog.mysite.com
?
如果可以的话,只需将您的Redirect
配置放在那里:
<VirtualHost *:80>
ServerName blog.mysite.com
Redirect / http://mysite.com/blog/
</VirtualHost>
如果由于某种原因您仍然需要搭载其他虚拟主机,或者需要处理所有子域而不仅仅是“博客”,那么使用mod_rewrite
:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^([^\.]+)\.mysite\.com$
RewriteRule ^/(.*)$ http://mysite.com/%1/$1 [R=301,L]