Opened 7 years ago

Closed 7 years ago

Last modified 7 years ago

#365 closed enhancement (invalid)

$fastcgi_http_$HEADER

Reported by: poly Owned by:
Priority: minor Milestone:
Component: nginx-core Version: 1.3.x
Keywords: Cc:
uname -a: Linux local 3.8.0-23-generic #34-Ubuntu SMP Wed May 29 20:22:58 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
nginx -V: nginx version: nginx/1.4.1
TLS SNI support enabled
configure arguments: --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-log-path=/var/log/nginx/access.log --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --with-pcre-jit --with-debug --with-http_addition_module --with-http_dav_module --with-http_geoip_module --with-http_gzip_static_module --with-http_image_filter_module --with-http_realip_module --with-http_stub_status_module --with-http_ssl_module --with-http_sub_module --with-http_xslt_module --with-ipv6 --with-mail --with-mail_ssl_module --add-module=/build/buildd/nginx-1.4.1/debian/modules/nginx-auth-pam --add-module=/build/buildd/nginx-1.4.1/debian/modules/nginx-dav-ext-module --add-module=/build/buildd/nginx-1.4.1/debian/modules/nginx-echo --add-module=/build/buildd/nginx-1.4.1/debian/modules/nginx-upstream-fair --add-module=/build/buildd/nginx-1.4.1/debian/modules/ngx_http_substitutions_filter_module

Description

We have $upstream_http_$HEADER so why not a fastcgi equivalent?

With this we can set dynamic cache keys which is very useful for many PHP applications which serve up different content for the same page (i.e. languages and skins but NOT sessions).

Change History (3)

comment:1 by Maxim Dounin, 7 years ago

Resolution: invalid
Status: newclosed

The $upstream_http_* variables are generic, and represent response headers as returned by a backend with all backend protocols, including fastcgi.

comment:2 by poly, 7 years ago

Then why can a $upstream_http_* variable be used in fastcgi_cache_key?

comment:3 by Maxim Dounin, 7 years ago

As these variables are only available with a response, there is no much sense in using them in fastcgi_cache_key - as cache key is evaluated before a request is sent to a backend.

Note: See TracTickets for help on using tickets.