我在htaccess中有以下内容来删除尾部斜杠:
#RewriteCond %{HTTP_HOST} !^\.example\.com$ [NC]
#RewriteRule ^(.+)/$ http://%{HTTP_HOST}/$1 [R=301,L]
这很好用,但我现在需要为该规则添加一个例外。 我有一个文件夹(让我们称之为'myfolder')需要一个尾部斜杠。有可能修改上述条件以允许这个吗?
答案 0 :(得分:2)
当然,像这样,例如:
RewriteCond %{HTTP_HOST} !^\.example\.com$ [NC]
RewriteCond %{REQUEST_URI} !^/myfolder/$
RewriteRule ^(.+)/$ http://%{HTTP_HOST}/$1 [R=301,L]
这会将http://example.com/myfolder/
排除在重定向到http://example.com/myfolder
之外。如果myfolder
位于子文件夹中,则需要相应地更改重写条件中的路径。
如果您要排除myfolder
,无论其位于何处(例如/myfolder/
,/something/myfolder/
或/something/interesting/myfolder/
),请相应地更改重写条件:
RewriteCond %{HTTP_HOST} !^\.example\.com$ [NC]
RewriteCond %{REQUEST_URI} !/myfolder/$
RewriteRule ^(.+)/$ http://%{HTTP_HOST}/$1 [R=301,L]