我想设置一个重写规则,以便将任何请求转发到特定的uri,除非请求以该uri开头。
例如,http://myhost/anything应重定向到http://myhost/mydirectory 但是http://myhost/mydirectory/mysubdirectory/myfile不应该被触及(即它应该返回http://myhost/mydirectory/mysubdirectory/myfile)
我尝试了各种各样的东西,google和堆栈溢出搜索但没有成功......
RewriteEngine on
RewriteCond %{REQUEST_URI} !^/mydirectory/
RewriteRule .* /mydirectory/ [R]
帮助赞赏:)
更新:根据以下评论,我已修复此问题。我实际上有两种重写规则的方法,两者似乎都有效。我不知道其中一个或另一个是否是首选方法。
RewriteCond %{REQUEST_URI} !^/mydirectory/
RewriteRule .* /mydirectory/ [R]
或
RewriteRule ^/mydirectory/.* - [L]
RewriteRule .* /mydirectory/ [R]