答案 0 :(得分:1)
根据您的问题,有两种方案,您可以根据需要选择合适的方案:
第一
RewriteEngine On
RewriteCond %{THE_REQUEST} ^[A-Z]{3,7}\s/folder/?\sHTTP.*$
RewriteRule ^(.*)$ / [R=302,L]
RewriteRule ^$ /folder/ [L]
您同时捕获了两个请求http://example.com/folder
或http://example.com/folder/
,然后将其中的任何一个外部重定向到http://example.com/
,但仍从该文件夹内部获取数据。
第二:
RewriteEngine On
RewriteCond %{REQUEST_URI} /folder/?$
RewriteRule ^(.*)$ / [R=302,L]
您捕获了两个请求http://example.com/folder
或http://example.com/folder/
,然后将其中任何一个重定向到http://example.com/
。
在这两种情况下,对http://example.com/folder/file
的任何请求都将保持不变。
注意:如果任何一个都可以,请将R=302
更改为R=301
以进行永久重定向
答案 1 :(得分:0)
尝试一下
RewriteCond %{REQUEST_URI} ^/folder/?$
RewriteCond %{REQUEST_URI} !^/folder/file$
RewriteRule (.*) / [R=301,L]