Ensure that a single trailing slash is always added to the URL
Ensure that a single trailing slash is always added to the URL. URLs accessed via
Ajax, contain $_GET vars, or that contain an extension are ignored.
example.com/contact
is redirected to example.com/contact/
example.com/contact//
is redirected to example.com/contact/
example.com/contact?test
is not redirectedexample.com/contact.html
is not redirectedFor SilverStripe 3, please refer to the SilverStripe3 branch.
composer require axllent/silverstripe-trailing-slash
?flush=1
By default it will ignore any admin/
& dev/
URLs, as well as all ajax requests.
It also only acts on $_GET
requests as not to interfere with any posted data, and
ignores any url containing an extension (eg: /contact.html
) or query parameter.
You can create additional "ignore_paths" by creating a yaml config
(eg: app/_config/trailing-slash.yml
):
Axllent\TrailingSlash\Middleware\TrailingSlashRedirector:
ignore_paths:
- 'events'
- 'my/other/path'
These paths are relative to the base URL (/
), so events
will not match /page/events
,
but will match /events-2020
.
Please note that paths do not typically contain a trailing slash unless it is only
underlying URLs you wish to redirect. Wildcards etc are not supported in the syntax.
Module rating system helping users find modules that are well supported. For more on how the rating system works visit Module standards
Score not correct? Let us know there is a problem