Htaccess子域,具有子文件夹访问权限


htaccess subdomain with subfolders access

我正在尝试使用.htaccess重写子域请求到我的服务器中的子文件夹。我想让mail.domain.com查看位于根目录下的mail文件夹。我可以用下面的代码

实现这一点
RewriteEngine on
RewriteCond %{HTTP_HOST} mail.domain.com$
RewriteCond %{REQUEST_URI} !^/mail
RewriteRule ^(.*)$ /mail/$1 [L]

This WORKS正确。当我浏览到mail.domain.com时,我得到了domain.com/mail/index.php的内容。

但是,这不适用于子域内的子文件夹。即,当我浏览到mail.domain.com/installer它不给domain.com/mail/installer/index.php的内容。相反,它显示404错误。我还尝试了从htaccess子域指向的代码。不知怎么的,我无法得到输出。这种方法也会产生同样的问题。我做错了什么?

注意:

    我不需要重定向条件。想要通过重写规则实现。
  1. 我使用openshift服务器。create domain.com &mail.domain.com别名。
  2. 根目录包含wordpress与没有在。htaccess规则。

编辑

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index'.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

当我删除上面的wordpress htaccess都工作得很好。所以它导致404错误在子域子文件夹。请帮助我能做的wordpress漂亮的url和子域子文件夹的工作?

注意:我真的很抱歉。Wordpress通过web界面添加了这个,我没有注意到。

保持root .htaccess如下:

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} =mail.domain.com
RewriteRule ^((?!mail).*)$ mail/$1 [L,NC]
RewriteRule ^(index'.php$|mail) - [L,NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]