htaccess,附加一个正斜杠,然后删除并处理而不改变 URL

htaccess, append a forward slash, then remove and process without altering the URL

我想将所有网址从 www.example.com 重写为 www.example.com/

我有一条添加正斜杠的规则:

RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*[^/])$ // [L,R=301]

我想创建另一个规则。它的目的是检查是否存在尾部斜杠。如果是这样,它将在不更改浏览器中显示的 URL 的情况下将其删除以进行处理。

这可以做到吗?

您可以使用这两条规则:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{THE_REQUEST} \s/+(.*?)[^/][?\s]
RewriteRule [^/]$ %{REQUEST_URI}/ [L,R=301]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+?)/$ / [L]