2012-01-04 20 views
13

का उपयोग करके मुझे अपनी साइट के लिए एसईओ-अनुकूल यूआरएल बनाने की आवश्यकता है। मुझे पता चला कि मैं उन्हें फिर से लिखने के लिए .htaccess का उपयोग कर सकता हूं।.htaccess newbie issue mod_rewrite

> http://www.domain.com/page/1/mypage 
> http://www.domain.com/user/2/myuser 
> http://www.domain.com/help/3/myhelp 

अब मैं एक आम नियम के साथ फंस कर रहा हूँ और मुझे समझ नहीं आता चींटी पेज के नाम के आधार पर यातायात पुनर्निर्देशित करना: तो मैं इस कोशिश की

मैं का उपयोग करें:

RewriteEngine ON 
RewriteRule ^(.*)$ page.php?page=$1 

फिर मेरे PHP में मुझे पृष्ठ सही तरीके से नहीं मिलता है, मुझे वह फ़ाइल मिलती है जो गलत है।

मैं इसे कैसे ठीक कर सकता हूं?

+0

में अधिक जानकारी प्राप्त, इस ऑनलाइन उपकरण http://www.webconfs.com/url-rewriting-tool.php को देखने के लिए अपने URL को नियंत्रित किया जा सकता देख सकते हैं। यह आपको .htaccess कोड भी उत्पन्न करेगा। – Arfeen

उत्तर

17

यहाँ आप क्या करने की जरूरत है:

RewriteEngine On 
RewriteBase/
RewriteRule ^([a-z_\-]+)/([0-9]+)/([a-z_\-]+)/?$ page.php?page=$1&id=$2&name=$3 [NC,L] 

एनसी (या nocase) परीक्षण केस-संवेदी, एक एक = बनाता है;

एल (या अंतिम) अंतिम नियम। यहां पुनर्लेखन प्रक्रिया को रोकें और नियमों को फिर से लिखने के लिए लागू न करें;

आप एक अच्छी शुरुआत के लिए http://httpd.apache.org/docs/current/mod/mod_rewrite.html

+0

मुझे अंतर दिखाई देता है, मुझे कोशिश करें, क्यों एनसी और एल? – Marty

+3

'एनसी' * कोई मामला नहीं है, यानी मामला असंवेदनशील है। 'एल' * आखिरी * है, जिसका अर्थ है कि यह नियम –

+0

से मेल खाता है, तो मेरा नियम –

संबंधित मुद्दे