繁体   English   中英

htaccess中的定期RedirectMatch

[英]Recurring RedirectMatch in htaccess

免责声明:我对mod_rewrite或regex不太满意。

我的根目录.htaccess中包含以下内容:

RedirectMatch 301 ^(.+\.pdf)$ files/$1

我要实现的是, 根文件夹中任何扩展名为.pdf 的文件都将被重定向到/files子目录。

问题是这与站点上的任何.pdf匹配,并且在子文件夹中时似乎会再次出现,例如

如预期的那样, mydomain.com/some.pdf变为mydomain.com/files/some.pdf

然而:

当我根本不想重写此URL时, mydomain.com/sub/some.pdf变为mydomain.com/files/files/files/files/files/files/sub/some.pdf 我假设它遇到了无限循环,但经过多次重定向后便自行消失了。

非常感谢您的帮助。

RedirectMatch 301 ^([^/]+\\.pdf)$ files/$1

此处的关键是使用[^/]+而不是.+这样您就不会将/作为模式的一部分。 这会将您的模式隔离为仅根目录中匹配的pdf文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM