2013-06-05 7 views
11

मैं चित्रों है, और मुझे अधिकतम करने के लिए अपने शीर्ष लेख जोड़ना चाहते हैं के साथ ही विशिष्ट फ़ाइलों को हेडर को जोड़ने के लिए, मैं प्रोफ़ाइल चित्र जो बदला जा सकता है और चित्र पोस्ट मैं केवल पोस्ट चित्रों के लिए हेडर जोड़ना चाहते है, लेकिन चित्रों प्रोफ़ाइल के लिए नहीं, मुझे नहीं पता कि मैं इस का प्रबंधन कर सकते हैं। धन्यवाद, यह मेरा विन्यास,कैसे nginx

this is the path of posts, /post/name-of-the-picture.jpg 

this is the path of users, /user/name-of-the-picture.jpg 

है मैं केवल पथ पोस्ट करने के लिए

location ~* \.(css|js|png|gif)$ { 
    expires max; 
    add_header Pragma public; 
    add_header Cache-Control "public"; 
} 

उत्तर

19

हेडर जोड़ना चाहते हैं वर्तमान में हम दो विकल्प इस हल करने के लिए:

विकल्प 1:

दोहराए स्थानों: nginx सबसे अच्छा मैच के लिए लग रहा है। (थोड़ा बेहतर प्रदर्शन)

location /post/ { 
    post config stuff; 
    . 
    . 
    . 
}  
location ~* ^/post/.*\.(css|js|png|gif)$ { 
    post/files.(css|js|png|gif) config stuff; 
    expires max; 
    add_header Pragma public; 
    add_header Cache-Control "public"; 
} 
location /user/ { 
    user folder config stuff; 
    . 
    . 
    . 
}  
location ~* ^/user/.*\.(css|js|png|gif)$ { 
    user/files.(css|js|png|gif) config stuff; 
    . 
    . 
    . 
} 

विकल्प 2:

नेस्टेड स्थानों: भीतरी स्थान ब्लॉकों में विस्तार छानने का आधार

location /post/{ 
    ... 

    location ~* \.(css|js|png|gif)$ { 
     expires max; 
     add_header Pragma public; 
     add_header Cache-Control "public"; 
    } 
} 
location /user/{ 
    ... 

    location ~* \.(css|js|png|gif)$ { 
     ... 

    } 
} 
+1

धन्यवाद, didn 'टी पता है कि तुम घोंसला 'location' ब्लॉक कर सकते हैं कि! –

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