Force trailing slash (redirect if no trailing slash exists) in .htaccess

Apache: Force trailing slash (redirect if no trailing slash exists) in .htaccess

If you want to redirect from http://example.com/test to http://example.com/test/ then you can use the following .htaccess code:

  1. RewriteCond %{REQUEST_URI} \/+[^\.]+$
  2. RewriteRule ^(.+[^/])$ %{REQUEST_URI}/ [R=301,L]

Don't forget that you will probably need to enable the rewrite engine for these rules to work. Click the button below to find out how to do this.

webdevetc profile pic
webdevetc

I am a 29 year old backend web developer from London, mostly focusing on PHP and Laravel lately. This (webdevetc.com) is my blog where I write about some web development topics (PHP, Laravel, Javascript, and some server stuff). contact me here.



More...


Comments and discussion about Force trailing slash (redirect if no trailing slash exists) in .htaccess

Found this interesting? Maybe you want to read some more in this series?

Or see other topics in the Apache language

Or see other languages/frameworks:
PHP Laravel Composer Apache CentOS and Linux Stuff WordPress General Webdev and Programming Stuff JavaScript
Or see random questions

What is the difference between ( for ... in ) and ( for ... of ) in javascript?

What is snake case?

How to get the first row that matches some where queries, or create it if it doesn't exist (in Laravel's Eloquent)?

How to set environmental variables in your .htaccess file

What is the difference between integration and unit tests?

How to do comments in Blade files?

How to return an item in Eloquent, or throw a ModelNotFoundException exception if it isn't found?

How to find the intersection (same values) from two arrays?

How to access the Laravel's route parameters outside of the controller?

How to pick what array_intersect function to use in PHP?