Welcome! Log In Create A New Profile

Advanced

Re: nginx as a caching reverse proxy to replace squid/varnish

August 19, 2009 08:38AM
On Mon, Aug 17, 2009 at 02:39:52PM -0700, mobiledreamers@gmail.com wrote:

> Hey guys
> the following is our current setup on the apps
>
> but we would like to add nginx as a reverse proxy cache much like squid or
> varnish
> is it possible to edit this config to enable that caching behavior or do i
> need to add another nginx in front of this set up like i would do for squid
> or varnish
>
> if this can be done without resorting to usage of squid and varnish it would
> be nice to have the complete setup in nginx
>
>
>
> thanks a lot
>
>
> upstream backend_appname{
> #start1.someserver.com
> server start1.someserver.com:7810 fail_timeout=3s;
> server start1.someserver.com:7811 fail_timeout=3s;
> server start1.someserver.com:7812 fail_timeout=3s;
> server start1.someserver.com:7813 fail_timeout=3s;
>
>
> }
> server {
> server_name appname.someserver.com;
> listen 80;
> access_log logs/access_appname.log;
> #error_log logs/error_appname.log;
>
> location /nginx_status {
> stub_status on;
> access_log off;
> }
>
> location /static {
> root /home/someuser/work/appname;
> expires max;
> add_header Cache-Control
> public,max-age=604800,post-check=604800,pre-check=1209600;
> }
> location / {
> root /home/someuser/work/appname;
> fastcgi_pass backend_appname;
> set $addr $remote_addr;
>
> if ($http_x_forwarded_for ~ "(?:^|,)\s*(\d+\.\d+\.\d+\.\d+)\s*$") {
> set $addr $1;
> }
>
> fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;
> fastcgi_param PATH_INFO $fastcgi_script_name;
> fastcgi_param QUERY_STRING $query_string;
> fastcgi_param CONTENT_TYPE $content_type;
> fastcgi_param CONTENT_LENGTH $content_length;
> fastcgi_param REQUEST_METHOD $request_method;
> fastcgi_param REMOTE_ADDR $addr;
> fastcgi_param REMOTE_PORT $remote_port;
> fastcgi_param SERVER_PROTOCOL $server_protocol;
> fastcgi_param SERVER_ADDR $server_addr;
> fastcgi_param SERVER_PORT $server_port;
> fastcgi_param SERVER_NAME $server_name;
>
> }
>
> }

Instead of

set $addr $remote_addr;

if ($http_x_forwarded_for ~ "(?:^|,)\s*(\d+\.\d+\.\d+\.\d+)\s*$") {
set $addr $1;
}

fastcgi_param REMOTE_ADDR $addr;

you should use

set_real_ip_from 0.0.0.0/32;
real_ip_header X-Forwarded-For;

fastcgi_param REMOTE_ADDR $remote_addr;


--
Igor Sysoev
http://sysoev.ru/en/
Subject Author Posted

nginx as a caching reverse proxy to replace squid/varnish

mobiledreamers@gmail.com August 17, 2009 05:39PM

Re: nginx as a caching reverse proxy to replace squid/varnish

Mirosław Jaworski August 18, 2009 03:53AM

nCache, Varnish Performance

princeap January 27, 2010 10:57PM

Re: nCache, Varnish Performance

merlin corey January 28, 2010 04:46PM

Re: nCache, Varnish Performance

Piotr Sikora January 28, 2010 05:04PM

RE: nCache, Varnish Performance

testbot January 28, 2010 05:14PM

Re: nCache, Varnish Performance

Jérôme Loyet January 28, 2010 05:20PM

RE: nCache, Varnish Performance

testbot January 28, 2010 05:26PM

Re: nCache, Varnish Performance

Kon Wilms January 28, 2010 05:30PM

Re: nCache, Varnish Performance

Maxim Dounin January 28, 2010 06:00PM

Re: nCache, Varnish Performance

Piotr Sikora January 28, 2010 06:14PM

Re: nCache, Varnish Performance

Ryan Malayter January 28, 2010 06:12PM

Re: nCache, Varnish Performance

Luca De Marinis January 29, 2010 04:52AM

Re: nCache, Varnish Performance

Akins, Brian February 01, 2010 08:04AM

Re: nginx as a caching reverse proxy to replace squid/varnish

Igor Sysoev August 19, 2009 08:38AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 263
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready