nginx proxy cache et ssi

J'utilise nginx pour les requêtes de caching du server apache en amont, mais je souhaite que quelques blocs à l'intérieur soient récupérés d'apache tout le time. J'espère que ssi peut le faire, mais les balises SSI sont envoyées à l'user sans être prétraitées.

location ~* ^.+\.html$ { proxy_pass http://localhost:9999; proxy_cache_key "$prime$scheme$host$request_uri"; ssi on; ssi_silent_errors off; log_subrequest on; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Country $country_code; proxy_cache my-cache; proxy_cache_bypass $http_x_refresh_cache; proxy_cache_valid 200 302 30d; proxy_cache_valid 404 10m; proxy_cache_valid any 1m; } 

Il s'agit de la confiance nginx pertinente.

2 Solutions collect form web for “nginx proxy cache et ssi”

 proxy_cache_key "$prime$scheme$host$request_uri"; 

Cette ligne met en cache toutes les parties individuelles de la page sous la même key (l'URI que l'user a tapé), de sorte que les différentes parties de la page se écrasent et que seule la dernière est returnnée. Vous souhaitez utiliser $uri plutôt que $request_uri , de sorte que chaque partie de chaque page est caching sous son propre nom personnel.

Assurez-vous que http: // localhost: 9999 ne compresse pas la sortie. Simpy en ajoutant

  proxy_set_header Accept-Encoding ""; 

voir: https://stackoverflow.com/questions/24680989/with-nginx-how-do-i-run-ssi-on-a-page-returned-from-another-server

  • Comment activer SSI pour tous les files html?
  • Je ne peux pas requestr à SSI de travailler sur Fedora / Apache
  • HTAccess Index Index avec fichiers PHP
  • Comment puis-je activer SSI sur des pages HTML sur GoDaddy (hébergement Windows)?
  • Inclure le SSI virtuel ne fonctionnant pas pour le script CGI
  • PHP SSI avec NGINX
  • Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de rĂ©seau.