htaccess从有条件的文件夹中读取文件

时间:2011-08-17 19:16:32

标签: apache .htaccess

root中的

结构是:

  ROOT\_public
  ROOT\_blog
  ROOT\_about

什么时候来到domain.com/blog它会读取root_blog(第一个) 什么东西来到domain.com/maps它会读取root_maps(第二个) 什么时候来,它会读取root_public文件夹..(第三)

第三是不起作用!

为什么?

RewriteEngine on 

# rewrite to trailing shash in domain/about and domain/maps 
RewriteRule ^(about|blog|docs)$ /$1/ [R]

# rewrite domain.com/about/something to /_about/something 
RewriteRule ^(about|blog|docs)/(.*)$ /_$1/$2/ 

# rewrite anything that doesn't start about/ or maps/ to _public 
RewriteCond %{REQUEST_URI} !^/(about|maps|docs)/
RewriteRule ^(.*)$ _public/$1

我不知道,为什么它不起作用。请帮忙。谢谢!

1 个答案:

答案 0 :(得分:0)

/ somethingelse将被定向到_public / somethingelse _public / somethingelse将反过来指向_public / _public / somethingelse _public / _public / somethingelse ...等。

如果已经重写,则需要停止重写。

RewriteRule ^_ - [L]
RewriteCond %{REQUEST_URI} !^/(about|maps|docs)/
RewriteRule ^(.*)$ _public/$1

添加的行将匹配以“_”开头的任何内容,并停止在其下方应用任何规则。