2011-10-25 15 views
10

मैंने पिछले वर्ष से अपनी साइट को दो बार अपडेट किया है और मेरे पहले संस्करण के बाद से मेरे पास अलग-अलग पेज नाम हैं। क्या अपाचे में गतिशील नियम बनाना संभव है?गतिशील। Htaccess नियम

उदाहरण के लिए

:

मैं इन पृष्ठों (उदाहरण) के लिए उपयोग करें:

  • /abc123 (संस्करण 1)
  • /abc_123 (संस्करण 2)
  • /abc123/(संस्करण 3 - वर्तमान)

मैं एक नियम है कि abc123 रीडायरेक्ट करेगा abc_123 के लिए अगर यह मौजूद है और abc123 के लिए abc_123 अगर यह ई बनाना चाहते हैं xists। धन्यवाद

+0

"अगर यह मौजूद है" के बारे में आपके द्वारा स्वीकार किए गए उत्तर में कुछ भी नहीं है। तो, जाहिर है कि वास्तव में आपके प्रश्न का हिस्सा नहीं था, आपने यह क्यों पूछा? –

उत्तर

16

ऐसा क्यों नहीं?

RewriteRule ^([a-z]+)([0-9]+)$ /$1-$2 [NC,L] 
RewriteRule ^([a-z]+)_([0-9]+)$ /$1-$2 [NC,L] 

संपादित करें:

या आप 1 नियम का उपयोग कर सकते हैं:

RewriteRule ^([a-z]+)(_?)([0-9]+)/?$ /$1-$3 [NC,L] 

इस तरह से यह बजाय एक साथ पर एक ही नियम बनाने की (_?) में पात्रों जोड़ना आसान है थोड़ा भिन्नता

+0

धन्यवाद धन्यवाद यह काम करता है –

-6

मैं this example पाया:

RewriteEngine on 
# 
# If the requested URL exists as a file with a .php extension 
RewriteCond %{DOCUMENT_ROOT}/$1.php -f 
# internally rewrite requested .html URL to .php file 
RewriteRule ^(([^/]+/)*[^.]+)\.html$ /$1.php [NC,L] 

आप विभिन्न विकल्पों के बारे में पढ़ सकते हैं और यह अपनी स्थिति के लिए काम करने के लिए इसे संपादित करना चाहते होंगे।

+6

मैंने कोशिश की लेकिन यह काम नहीं करता –