mod_rewrite检查目录规则

时间:2012-02-22 15:23:58

标签: apache .htaccess mod-rewrite apache2 directory

我有一个网址:

example.com/site/anyFolderName

我希望将其重新映射到:

example.com/site/myfolder/anyFolderName

但只有在'anyFolderName'文件夹存在的情况下才会去那里。我已经在几个地方搜索过这个但是无法弄明白。


这是我到目前为止所发现的:

Rewrite Condition to compare top level directory from Request_URI - 与我需要的非常相似,但我有2个级别

http://httpd.apache.org/docs/2.2/rewrite/remapping.html#搜索多个目录中的网页

谢谢。

1 个答案:

答案 0 :(得分:3)

尝试将以下内容添加到站点根目录中的.htaccess文件中。

RewriteEngine on
RewriteBase / 

RewriteCond %{REQUEST_URI} ^/site/(\w+)$ [NC] 
#if site/myfolder/anyFolderName exists
RewriteCond %{DOCUMENT_ROOT}/site/myfolder/%1 -d
#rewrite request to site/myfolder/anyfolder
RewriteRule ^ site/myfolder/%1 [L,NC]