axllent/silverstripe-trailing-slash

确保URL总是添加单个尾部斜杠

安装次数: 150,189

依赖项: 7

建议者: 0

安全性: 0

星标: 11

关注者: 4

分支: 4

开放问题: 0

类型:silverstripe-vendormodule

2.2.7 2023-06-07 04:23 UTC

This package is auto-updated.

Last update: 2024-09-07 07:19:16 UTC


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。语法不支持通配符等。