首页 > 解决方案 > 正则表达式向 URL 添加尾部斜杠,除非 URL 以文件扩展名结尾

问题描述

我目前正在尝试让一个 WordPress 站点(使用重定向插件)始终向任何没有斜杠的 URL 添加斜杠,但前提是 URL 没有以斜杠结尾或文件扩展名(所以图像,. php 文件/页面等不受影响)。

例如www.mysite.com/page变成www.mysite.com/page/,但是www.mysite.com/page/www.mysite.com/file.php被单独留下。

我能够让前半部分工作(如果它还没有以一个结尾,则强制使用斜杠),但我正在努力添加额外的条件。

这是我目前拥有的:

来源网址:/([^\/]+)$

目标网址:/$1/

不幸的是,使用 .htaccess 等不是一种选择。任何建议将不胜感激。

标签: wordpressredirecturl-rewritingregexp-replace

解决方案


如果最后一个后面的部分不能有点,/则可以将其添加到否定字符类中。

如果分隔符不是 a/那么您不必在模式中对其进行转义。

/([^/.]+)$

正则表达式演示


推荐阅读