apache - Rewrite rule with the exception of static content -


मेरी वर्तमान htaccess फ़ाइल इस तरह दिखती है:

  पुनर्लेखन पर पुनर्लेखन कोड% {REQUEST_FILENAME}! -एफ [एनसी] रीवाइटकॉन्ड% {REQUEST_FILENAME}! -d [एनसी] रिवेराइटियम ^ (। *) $ Index.php? पेज = $ 1 [एल, क्यूएसए]   

यह काम ठीक है हालांकि, मैं कोशिश करूँगा और सर्वर लोड को कम कर दूंगा इसलिए मैंने इस लाइन को रेवरइटइजइन ऑन लाइन के ठीक नीचे जोड़ दिया है ताकि स्थिर सामग्री लोड करने पर प्रोसेसिंग बंद हो जाये।

  RewriteCond% {REQUEST_FILENAME}!। Jpg $ |। * $ Gif $। * Png $।। Css $।। * Js $। * * Txt $। * Ico $। * Pdf $ [nc]  

क्या यह लिखने का सबसे कारगर तरीका है? धन्यवाद

पंक्ति 2 में आप पहले से ही अनुरोधित फाइल (! - f < / कोड>), इसलिए आपकी लाइन जोड़ने की कोई आवश्यकता नहीं है, लेकिन यदि आप .php फ़ाइलों की तरह अन्य फ़ाइलों को लौटने से बचना चाहते हैं, तो आप अपने नए पुनर्लेखन स्थिति के साथ लाइन 2 की जगह ले सकते हैं। निष्पादन योग्य मुझे नहीं लगता है कि यह अपाचे अप को गति देगा हालांकि, और आपके वेब अनुप्रयोग में कुछ अन्य प्रदर्शन छेद है।

उस ने कहा, आपका पैटर्न संभवत: नहीं है जो आप होने की उम्मीद करते हैं, जैसे कि । * Jpg $ मिलान mysuperjpg के रूप में भी आप । Jpg $ की खोज कर सकते हैं, क्योंकि नियमित अभिव्यक्ति के लिए एक विशेष वर्ण है आप यह कर सकते हैं:

  रीवाइटकंड% {REQUEST_FILENAME}! \। (Jpg | gif | png | css | js | txt | ico | pdf) $ [एनसी]   

Comments

Popular posts from this blog

c++ - QtQuick: QQmlApplicationEngine failed to load component qrc:/main.qml:23 Invalid attached object assignment -

sql - dynamically varied number of conditions in the 'where' statement using LINQ -

asp.net - getting a value of selected radiobutton in LoadViewState -