axllent / silverstripe-trailing-slash
确保URL总是添加单个尾部斜杠
2.2.7
2023-06-07 04:23 UTC
Requires
- silverstripe/framework: ^4.0 || ^5.0
README
确保URL总是添加单个尾部斜杠。
只有GET和HEAD请求被重定向,排除包含文件扩展名或查询参数的URL。检测到的ajax请求也被忽略。
示例
example.com/contact
重定向到example.com/contact/
example.com/contact//
重定向到example.com/contact/
example.com/contact?test
不会被重定向example.com/contact.html
不会被重定向
要求
- Silverstripe ^4.0 || ^ 5.0
对于Silverstripe 3,请参阅Silverstripe3分支。
安装和配置
composer require axllent/silverstripe-trailing-slash
- 运行
?flush=1
配置
默认情况下,它将忽略任何 admin/
& dev/
URL,以及所有ajax请求。它也仅对$_GET
请求进行操作,以免干扰任何已发布的数据,并忽略任何包含扩展名(例如:/contact.html
)或查询参数的URL。
您可以通过创建yaml配置文件创建额外的“ignore_paths”(例如:app/_config/trailing-slash.yml
)
Axllent\TrailingSlash\Middleware\TrailingSlashRedirector: ignore_paths: - 'events' - 'my/other/path'
这些路径相对于基本URL(/
),因此events
不会匹配/page/events
,但会匹配/events-2020
。
请注意,路径通常不包含尾部斜杠,除非您只想重定向基础URL。语法不支持通配符等。