Solved

URL rewrite rule to to add final slash to folder name

Posted on 2009-07-12
8
498 Views
Last Modified: 2013-12-25
Hi,

I want to redirect this url

www.mysite.com/search

 to mysite.com/search/

Just to add a final Slash at the end.

How to do this in the .htaccess ?
0
Comment
Question by:Fernanditos
8 Comments
 
LVL 29

Expert Comment

by:Michael W
Comment Utility
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !index.php
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ http://domain.com/$1/ [L,R=301]

Reference:
http://www.mydigitallife.info/2007/03/19/add-trailing-slash-to-the-end-of-the-url-with-htaccess-rewrite-rules/
0
 

Author Comment

by:Fernanditos
Comment Utility
Hi, Thank you. I have problem with the order or position where to place it inside my file. Here I attach the content of my .htaccess so it better for you to help me.
<IfModule mod_security.c>

	# Turn off mod_security filtering.  

	SecFilterEngine Off
 

	# The below probably isn't needed, but better safe than sorry.

	SecFilterScanPOST Off

</IfModule>
 

<IfModule mod_deflate.c>

	AddOutputFilterByType DEFLATE application/x-javascript application/javascript text/css text/ html text/xml

</IfModule>
 

RewriteEngine On

RewriteBase /

#Options +followsymlinks

RewriteEngine On
 

RewriteRule ^legal-terms-glossary/?$ /legal-glossary.php [L]

RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)/([^/\.]+)/?$ /legal-glossary-details.php?l=$1&id=$2&id_glo=$3 [L]
 

RewriteCond %{REQUEST_URI} !^/(search/)

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^([^/\.]+)/?$ browse-by-state.php?id_subcat=$1 [L]
 

rewriterule ^([^-]+)-([^-]+)\.htm$ /categ-result.php?id_cat=$1&txt=$2 [L]
 

RewriteRule ^([^/\.]+)/([^/\.]+)/?$ browse-by-city.php?id_subcat=$1&state=$2 [L]

RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)/?$ lawyers_result.php?id_subcat=$1&state=$2&city=$3 [L]
 

RewriteCond %{REQUEST_URI} !^/(categories/)

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)-([^/\.]+)\.html$ lawyer_details.php?state=$1&city=$2&id_lawyer=$4&id_law=$3 [L]
 

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule .* index.php [L]

Open in new window

0
 
LVL 7

Expert Comment

by:darrickhartman
Comment Utility
You should only need ONE statement that says "ReWriteEngine On"  You have two listed.  Remove the second statement.
0
 

Author Comment

by:Fernanditos
Comment Utility
Yes, I removed but where to place the code solution that mwecomputers gave me?

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !index.php
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ http://domain.com/$1/ [L,R=301]
<IfModule mod_security.c>

        # Turn off mod_security filtering.  

        SecFilterEngine Off

 

        # The below probably isn't needed, but better safe than sorry.

        SecFilterScanPOST Off

</IfModule>

 

<IfModule mod_deflate.c>

        AddOutputFilterByType DEFLATE application/x-javascript application/javascript text/css text/ html text/xml

</IfModule>

 

RewriteEngine On

 

RewriteRule ^legal-terms-glossary/?$ /legal-glossary.php [L]

RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)/([^/\.]+)/?$ /legal-glossary-details.php?l=$1&id=$2&id_glo=$3 [L]

 

RewriteCond %{REQUEST_URI} !^/(search/)

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^([^/\.]+)/?$ browse-by-state.php?id_subcat=$1 [L]

 

rewriterule ^([^-]+)-([^-]+)\.htm$ /categ-result.php?id_cat=$1&txt=$2 [L]

 

RewriteRule ^([^/\.]+)/([^/\.]+)/?$ browse-by-city.php?id_subcat=$1&state=$2 [L]

RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)/?$ lawyers_result.php?id_subcat=$1&state=$2&city=$3 [L]

 

RewriteCond %{REQUEST_URI} !^/(categories/)

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)-([^/\.]+)\.html$ lawyer_details.php?state=$1&city=$2&id_lawyer=$4&id_law=$3 [L]

 

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule .* index.php [L]

Open in new window

0
Enabling OSINT in Activity Based Intelligence

Activity based intelligence (ABI) requires access to all available sources of data. Recorded Future allows analysts to observe structured data on the open, deep, and dark web.

 
LVL 7

Expert Comment

by:darrickhartman
Comment Utility
I would try inserting the code right after the "RewriteEngine On" line.  You will need to adapt his code snippet to fit for your site.  (ie change domain.com to the specific domain you are using).
0
 

Author Comment

by:Fernanditos
Comment Utility
Notice that I only want to add end slash if is mydomain.com/seach

So, I do not want to add final slash to all.

Pls Help.
0
 
LVL 27

Accepted Solution

by:
caterham_www earned 500 total points
Comment Utility
> Notice that I only want to add end slash if is mydomain.com/seach

In that case:
<IfModule mod_security.c>

        # Turn off mod_security filtering.  

        SecFilterEngine Off

 

        # The below probably isn't needed, but better safe than sorry.

        SecFilterScanPOST Off

</IfModule>

 

<IfModule mod_deflate.c>

        AddOutputFilterByType DEFLATE application/x-javascript application/javascript text/css text/ html text/xml

</IfModule>

 

RewriteEngine On

RewriteBase /

#Options +followsymlinks
 

RewriteRule ^search$ /search/ [R=301,L]
 

RewriteRule ^legal-terms-glossary/?$ /legal-glossary.php [L]

RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)/([^/\.]+)/?$ /legal-glossary-details.php?l=$1&id=$2&id_glo=$3 [L]

 

RewriteCond %{REQUEST_URI} !^/search/

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^([^/\.]+)/?$ browse-by-state.php?id_subcat=$1 [L]

 

RewriteRule ^([^-]+)-([^-]+)\.htm$ /categ-result.php?id_cat=$1&txt=$2 [L]

 

RewriteRule ^([^/\.]+)/([^/\.]+)/?$ browse-by-city.php?id_subcat=$1&state=$2 [L]

RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)/?$ lawyers_result.php?id_subcat=$1&state=$2&city=$3 [L]

 

RewriteCond %{REQUEST_URI} !^/categories/

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)-([^/\.]+)\.html$ lawyer_details.php?state=$1&city=$2&id_lawyer=$4&id_law=$3 [L]

 

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^  index.php [L]

Open in new window

0
 

Author Comment

by:Fernanditos
Comment Utility
It works great. Thank you master !
0

Featured Post

What Is Threat Intelligence?

Threat intelligence is often discussed, but rarely understood. Starting with a precise definition, along with clear business goals, is essential.

Join & Write a Comment

In Solr 4.0 it is possible to atomically (or partially) update individual fields in a document. This article will show the operations possible for atomic updating as well as setting up your Solr instance to be able to perform the actions. One major …
New Relic recently released its Synthetics product that allows for the creation of performance monitors that periodically test a site's performance. If you wish to test an interactive workflow New Relic employs Selenium WebDriverJS to run those test…
The purpose of this video is to demonstrate how to set up the WordPress backend so that each page automatically generates a Mailchimp signup form in the sidebar. This will be demonstrated using a Windows 8 PC. Tools Used are Photoshop, Awesome…
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …

744 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now