2016-07-30 6 views
6

यह वास्तव में मेरे लिए निराशाजनक है कि मैं इस बहुत ही बुनियादी एचटीएसीएसी रीराइट को घंटों से काम करने की कोशिश कर रहा हूं लेकिन ऐसा नहीं कर सका।बेसिक एचटीएसीएएस कोड काम नहीं कर रहा है

मैंने निम्नलिखित करने का प्रयास किया है।

Options +FollowSymlinks 
RewriteEngine On 
RewriteBase /funshoppie/ 

############ Details page ################ 
RewriteCond %{THE_REQUEST} Deal\-details\.php\?title\=([A-Za-z0-9-]+)&id=(\d+) [NC] 
RewriteRule ^%1%2? [R=301,L,NE] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^Deals/([A-Za-z0-9-]+)/([A-Za-z0-9-]+)/?$ Deal-details.php?title=$1&id=$2 [NC,QSA,L] 

क्या कोई मुझे बता सकता है कि मैं क्या गलत कर रहा हूं?

यूआरएल मैं

http://localhost/funshoppie/Deal-details.php?title=Styling%20Tools%20-%2020%%20off&id=7 

के पुनर्लेखन के लिए क्या मैं सफलता

http://localhost/funshoppie/Deals/Styling-Tools-20%-off/7 

मैं त्रुटि लॉग की जाँच कर ली के बाद इच्छा कोशिश कर रहा हूँ, httpconf & uncommented rewrite_module सुनिश्चित किया। यह त्रुटि नहीं होने के कारण पता नहीं है।

+0

आप वास्तव में क्या करने की कोशिश कर रहे हैं? एक यूआरएल लिखें? क्या आप वह यूआरएल प्रदान कर सकते हैं जिसे आप फिर से लिखने की कोशिश कर रहे हैं? – Lag

+0

@ थिकगुरु - माफ़ी, मैं वर्तमान यूआरएल का उल्लेख करना भूल गया। –

+0

मुझे विश्वास है कि मैं यहां जवाब प्राप्त कर सकता हूं। यह अभी भी मेरे लिए एक रहस्य है। –

उत्तर

5

मैं इस समय इस कोशिश नहीं कर सकता लेकिन, आपके रेगुलर एक्सप्रेशन यूआरएल फिटिंग नहीं है:

डील-details.php title = स्टाइलिंग% 20Tools% 20% 2020 %% 20off & आईडी = 7

एन के आधार पर और डिकोडिंग इस के बाद दो स्ट्रिंग हो सकता है:

  • डील-details.php title = स्टाइलिंग% 20Tools% 20% 2020 %% 20off 01 ?

    [: -आईडी = 7

  • डील-details.php title = स्टाइलिंग उपकरण 20% & आईडी = 7

मामलों में से कोई भी अपने एक्सप्रेशन से मेल खाता ? ..] डील-details.php \ शीर्षक \ = ([एक-zA-Z0-9 -] +) & आईडी = (\ d +) [..]

आप की तरह अपने भाव से प्रतिनिधित्व किया वर्ण याद कर रहे हैं:

  • "%"
  • "" (अंतरिक्ष)

निम्नलिखित अभिव्यक्ति का प्रयास करें:

Deal\-details\.php\?title\=(.+)&id=(\d+) 

यह किसी भी मिलान कर देंगे चरित्र के बाद शीर्षक। अन्यथा मुझे कोई समस्या नहीं दिखती है।

-1

आखिरकार मैंने इसे अपने आप से समझ लिया।

आखिरी पुनर्लेखन नियमों में कुछ पिछली स्लैश समस्याएं थीं क्योंकि यह इरादा नहीं कर रही थीं। इसके अलावा मैंने कुछ मौजूदा यूआरएल फ़ंक्शन & के माध्यम से सभी मौजूदा & भविष्य के यूआरएल को फिर से लिखा है यूआरएल में उन सुंदर बयानों का उपयोग किया। फिर यह काम किया !!

RewriteCond %{THE_REQUEST} Deal\-details\.php\?title\=([A-Za-z0-9-_]+)&id\=(\d+) [NC] 
RewriteRule^%1/%2? [R=301,L,NE] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^([A-Za-z0-9-_]+)/(\d+)$ Deal-details.php?title=$1&id=$2 [NC,QSA,L] 

यह मेरे लिए काम करता है।

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