2012-01-05 20 views
5

साथ स्लैश नहीं तो एक निर्देशिका अनुगामी मैं निम्नलिखित पुनर्लेखन नियम है:निकालें अपाचे

#remove the www. 
RewriteCond %{HTTP_HOST} ^www.website.co.uk$ [NC] 
RewriteRule ^(.*)$ http://local.website.co.uk/$1 [R=301,L] 

#this removes php extention 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^([^\.]+)$ $1.php [NC,L] 

# stops you accessing url with.php 
RewriteCond %{THE_REQUEST} ^[A-Z]+\ /([^.?\ ]+)\.php 
RewriteRule ^([^.]+)\.php(/.+)?$ /$1%{PATH_INFO} [R=301] 

मैं एक नियम के किसी एक के साथ साइट का उपयोग करने की कोशिश करता है तो उस स्लैश को हटा में जोड़ना चाहते हैं।

जैसे

website.co.uk/cheese/ को/पनीर

रीडायरेक्ट करना चाहिए के रूप में आप मैं एक नियम है कि ursl .php extention के साथ पुनर्निर्देश है देख सकते हैं, यकीन नहीं कहाँ से शुरू करने के लिए।

मेरे पास रूट फ़ोल्डर में निर्देशिका है जो मैं पीछे की ओर यूआरएल को हटाना नहीं चाहता, लेकिन मैं उन लोगों के लिए एक अनदेखा नियम जोड़ सकता हूं।

चीयर्स

उत्तर

13

अपनी .htaccess फाइल करने के लिए नीचे दिए गए परिवर्तन

RewriteEngine on 
RewriteBase/

#existing rule 
#remove the www. 
RewriteCond %{HTTP_HOST} ^www.website.co.uk$ [NC] 
RewriteRule ^(.*)$ http://local.website.co.uk/$1 [R=301,L] 

#new Rule 
#if its not a directory 
RewriteCond %{REQUEST_FILENAME} !-d 
#and it has a trailing slash then redirect to URL without slash 
RewriteRule ^(.+)/$ /$1 [L,R=301] 

# rest of your existing rules go here 
+0

सही धन्यवाद बनाओ! – AJFMEDIA