在 Nginx 中,如果你想对没有尾部斜线(/)的 URL 进行 301 永久重定向并自动添加斜线,你可以使用如下配置: ```nginx server { listen 80; server_name yourdomain.com; rewrite ^([^.]*[^/])$ $1/ permanent; } ``` 上述配置中,`rewrite` 规则的工作原理是: - `^` 表示规则从请求开始匹配。 - `([^.]*[^/])$` 是一个正则表达式,匹配的是不以斜线结尾的任何非空路径。其中: - `[^.]*` 匹配除了点(.)以外的任意字符,任意次数。 - `[^/]` 确保路径最后一个字符不是斜线。 - `$1/` 是替换后的目标, `$1` 是对前面括号内匹配内容的引用,然后加上一个斜线。 - `permanent` 指定此次重定向为永久重定向,即返回 301 状态码。 这样,当用户访问 `http://yourdomain.com/pathwithoutslash` 时,Nginx 将会自动将其重定向到 `http://yourdomain.com/pathwithoutslash/`。 [2024-02-01 17:07:38 | AI写代码神器 | 274点数解答]