ozestretch Posted January 29, 2010 Share Posted January 29, 2010 Currently I add trailing slash to all directories so domain.com/666 redirs to domain.com/666/ I have a function that looks for '+' domain.com/666+ or domain.com/666+all but I do not want these urls to add a trailing slash So that works fine.... Issues is if a trailing slash is added (by user or whatever) at the end of a link like domain.com/666+/ domain.com/666+all/ I want it removed. RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]|/)$ RewriteCond %{REQUEST_URI} ([^+-+all])$ RewriteRule (.*)$ http://domain.com/$1/ [R=301,L] I would post what I tried but I kept deleting and starting over. Link to comment https://forums.phpfreaks.com/topic/190185-htaccess-remove-trailing-slash-when-present-in-url/ Share on other sites More sharing options...
ozestretch Posted January 29, 2010 Author Share Posted January 29, 2010 okay so this isn't what I needed either RewriteCond %{REQUEST_URI} ([^+-+all])$ this is good as the only links with a + are desired to not have trailing slash RewriteCond %{REQUEST_URI} ([^+])$ but the first method means if there is an a or an l it no work... help x 2 now lol thanks Link to comment https://forums.phpfreaks.com/topic/190185-htaccess-remove-trailing-slash-when-present-in-url/#findComment-1003567 Share on other sites More sharing options...
oni-kun Posted January 29, 2010 Share Posted January 29, 2010 Try this: #remove trailing slashes RewriteCond %{HTTP_HOST} !^\.yourdomain\.com$ [NC] RewriteRule ^(.+)/$ http://%{HTTP_HOST}/$1 [R=301,L] Link to comment https://forums.phpfreaks.com/topic/190185-htaccess-remove-trailing-slash-when-present-in-url/#findComment-1003582 Share on other sites More sharing options...
ozestretch Posted January 29, 2010 Author Share Posted January 29, 2010 thanks, unfortunately it doesn't offer what I need. domain.com domain.com/xxxxx to have trailing slash domain.com/xxxxx+ and domain.com/xxxxx+all to have no trailing slash so far it works except the trailing slash is still added to domain.com/xxxxx+all RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]|/)$ RewriteCond %{REQUEST_URI} ([^+])$ RewriteRule (.*)$ http://domain.com/$1/ [QSA,R=301,L] # RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{HTTP_HOST} !^domain.com$ [NC] RewriteRule ^(.*)$ http://domain.com/$1/ [QSA,L,R=301] Link to comment https://forums.phpfreaks.com/topic/190185-htaccess-remove-trailing-slash-when-present-in-url/#findComment-1003632 Share on other sites More sharing options...
ozestretch Posted January 29, 2010 Author Share Posted January 29, 2010 Sorted - thnks corz RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]|/)$ RewriteCond %{REQUEST_URI} ([^+])$ RewriteCond %{REQUEST_URI} !([a-zA-Z0-9]\+(all))$ RewriteRule (.*)$ http://domain.com$1/ [QSA,R=301,L] # RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{HTTP_HOST} !^domain.com$ [NC] RewriteRule ^(.*)$ http://domain.com/$1/ [QSA,L,R=301] Link to comment https://forums.phpfreaks.com/topic/190185-htaccess-remove-trailing-slash-when-present-in-url/#findComment-1003670 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.