php - Redirect from www.mydomain.com/foo to www.mydomain.com/foo/ -


i have piece of code in .htaccess file that: replace php extension trailing slash.

<ifmodule mod_rewrite.c> rewriteengine on rewritecond %{request_uri} (.*)/$ rewritecond %{request_filename}\.html -f rewriterule (.*)/$ $1.html [l]  rewritecond %{request_uri} (.*)/$ rewritecond %{request_filename}\.php -f rewriterule (.*)/$ $1.php [l]  rewritecond %{request_uri} (.*)/$ rewritecond %{request_filename}\.cgi -f rewriterule (.*)/$ $1.cgi [l]  ## redirect /dir/foo /dir/foo/   rewritecond %{request_filename} !-d rewritecond %{request_filename}\.html -f [or] rewritecond %{request_filename}\.php -f [or] rewritecond %{request_filename}\.cgi -f rewriterule .* %{request_filename}/ [r=301,l] </ifmodule> 

my question how can redirect requests www.mydomain.com/foo www.mydomain.com/foo/? (notice trailing slash)

solution:

rewritecond %{request_filename} !-f rewritecond %{request_uri} !(.*)/$ rewriterule ^(.*)$ http://www.example.com/$1/ [l,r=301]  

source & explanation: http://enarion.net/web/htaccess/trailing-slash/

  • rewritecond %{request_filename} !-f no redirect if file exists
  • rewritecond %{request_uri} !(.*)/$ condition: "if no trailing slash"
  • rewriterule ^(.*)$ http://example.com/$1/ [l,r=301] redirect url + trailing slash

Comments

Popular posts from this blog

How to connect android app to App engine -

gcc - MinGW's ld cannot perform PE operations on non PE output file -

php - display validation error message next to the textbox in codeigniter -