.htaccess对子域名感到沮丧

时间:2011-03-25 10:07:39

标签: .htaccess mod-rewrite subdomain

Zend Framework 下,我有一个像这样的目录结构:

索引:/domains/example.com/public_html/public/index.php

博客索引:/domains/example.com/public_html/blog/index.php

在我的.htaccess文件中,如下所示是指向主页的部分 - 这很好用:

RewriteCond %{REQUEST_URI} =""
RewriteRule ^.*$ /public/index.php [NC,L]

RewriteCond %{REQUEST_URI} !^/public/.*$
RewriteRule ^(.*)$ /public/$1

RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^.*$ - [NC,L]

RewriteRule ^public/.*$ /public/index.php [NC,L]

我已在主机管理控制台中启用了子域,现在我想添加一个可通过以下网址访问的博客:blog.example.com

我尝试添加:

RewriteCond %{HTTP_HOST} = ^www\.example\.com$
RewriteRule /blog/(.*) http://blog\.example\.com/$1 [L,R=301]

RewriteCond %{HTTP_HOST} = ^blog\.example\.com$
RewriteRule ^.*$ /blog/index.php [L]

但是当导航到blog.example.com,example.com / blog甚至example.com时,这会产生一个可怕的“内部服务器错误 - 500 ”..

我怀疑这可能是导致悲痛的Zend Framework的并发症。 我应该在.htaccess中为blog.example.com添加/编辑什么才能正确指出?

请&谢谢。

1 个答案:

答案 0 :(得分:0)

我认为你需要使用这个

RewriteCond %{HTTP_HOST} blog\.example\.com
RewriteRule (.*) http://www.example.com/blog%{REQUEST_URI} [NC,L,RSA]

这会将您所有的blog.example.com流量重写为example.com/blog