Nginx emplacement, d'alias, de réécriture, de la racine

Je suis portion /foo/bar/par voie de directives proxypass et souhaitez continuer à le faire. Cependant, j'aimerais servir /foo/bar/baz.swf de manière statique de dire /var/www/mystatic/baz.swf et ainsi de suite.

J'espérais que je pourrais faire quelque chose comme

    location /foo/bar/(.*) {
      alias /var/www/mystatic/;
    }

    location /{
      proxy_pass ....;
      ... 
    }

Et /foo/bar/aller sur le serveur d'applications alors que /foo/bar/(.*) serait servi de manière statique.

les docs disent que je ne peux pas faire cela et ont besoin d'utiliser une combinaison de racine et de réécriture: http://wiki.nginx.org/NginxHttpCoreModule

Ajouter à la complication, je voudrais continuer à utiliser l'ancien, non pris en charge 0.5.33. Toute aide serait grandement appréciée.

Edit: aller de l'avant, quelqu'un a suggéré d'utiliser la racine au lieu de alias. Mais, il ne semble pas que je puisse utiliser toutes les regex sur l'emplacement de la directive avec ma version? Ici, /foo/bar/baz.swf est servi par le proxy_pass! J'ai le fichier dans /var/www/foo/bar/baz.swf.

    location /foo/bar/(.+) {
      root /var/www/;
    }
lol, le pire question sur DONC badge.
Pourquoi ne pas simplement mettre location /foo/bar/(.+)?

OriginalL'auteur Skylar Saveland | 2009-11-29