Regex Apache2:基于URL的重定向
我在Apache2上,在目录“/demo”中。在这个目录中有:Regex Apache2:基于URL的重定向,regex,apache,mod-rewrite,Regex,Apache,Mod Rewrite,我在Apache2上,在目录“/demo”中。在这个目录中有: v1/index.html v2/index.html 我想这样重定向: “/demo”、“/demo/”和“/demo/*”=>v1/index.html “/demo/static”、“/demo/static/”和“/demo/static/*”=>v2/index.html 我试过这个,但没用: RewriteCond %{REQUEST_URI} !static [NC] RewriteRule .* v1/ind
- v1/index.html
- v2/index.html
- “/demo”、“/demo/”和“/demo/*”=>v1/index.html
- “/demo/static”、“/demo/static/”和“/demo/static/*”=>v2/index.html
RewriteCond %{REQUEST_URI} !static [NC]
RewriteRule .* v1/index.html [L]
RewriteCond %{REQUEST_URI} static [NC]
RewriteRule .* v2/index.html [L]
有人知道如何使这项工作吗
其他详情:
根目录在这里:/var/www/dev
,包含我的目录演示。htaccess在目录demo中 那么:
RewriteEngine On
RewriteRule .*demo/static.* v2/index.html [L]
RewriteRule .*demo.* v1/index.html
因为我不知道这里的文档根是什么,所以我使用了。*,所以它可以捕获比您想要的更多的内容,但这可以作为一个起点。也许这是一个解决方案
RewriteRule ^static/?$ v2/index.html [NC,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ v1/index.html
我不得不等待管理员的答复。根目录在这里:
/var/www/dev
,包含我的目录演示。htaccess在目录demo中。抱歉,您的代码不起作用。我在尝试访问_example.com/demo/static时遇到此错误:在此服务器上找不到请求的URL/demo/static。
我想我知道会发生什么:apache尝试从v2重定向到v1。这似乎可行,但非常难看:RewriteRule demo v2/index.html[NC,L]RewriteCond%{REQUEST_URI}!v2/index.html$RewriteRule.*v1/index.html[NC,L]