2013-06-05 29 views
11

Ho immagini, e voglio aggiungere le loro intestazioni al massimo, ho immagini di profilo che possono essere modificate e postare immagini, voglio aggiungere intestazioni solo per immagini di post, ma non per il profilo delle immagini, non ho idea di come posso gestirlo. grazie, questa è la mia configurazione,Come aggiungere intestazioni solo a file specifici con 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 

ho solo voglia di aggiungere intestazioni di inviare percorso

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

risposta

19

Attualmente abbiamo due opzioni per risolvere questo:

Opzione 1:

Posizioni duplicate: NGINX cerca la migliore corrispondenza. (Un po 'migliore prestazione)

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; 
    . 
    . 
    . 
} 

Opzione 2:

destinazioni nidificate: Filtrato per estensione nei blocchi spilli interne

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

Grazie, didn Sappiamo che puoi nidificare blocchi 'location'! –

Problemi correlati