# NginX problem with Reverse Proxy'ing

**URL:** <https://www.ruby-forum.com/t/nginx-problem-with-reverse-proxying/186654>\
**Category:** NGINX\
**Created:** [April 10, 2010, 5:37pm UTC](https://www.ruby-forum.com/t/nginx-problem-with-reverse-proxying/186654 "2010-04-10T17:37:05Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![victor](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/v/3e96dc/32.png) [@victor](https://www.ruby-forum.com/u/victor)\
**Post date:** [April 10, 2010, 5:37pm UTC](https://www.ruby-forum.com/t/nginx-problem-with-reverse-proxying/186654/1 "2010-04-10T17:37:05Z")

</div>

Hi, I have a little problem that’s driving me crazy since 4 days. I’m  
trying  
to create a server with NginX (0.8.35) serving static content (PDF files  
mainly) as frontend and Apache2 as backend processing the PHP files,  
actually I’m working only with basic PHP (phpinfo()) files for testing  
purposes (this isn’t my production machine, only a  
pre-production-kind-machine. Apache is running in 127.0.0.1:8080

When I’m trying to proxy the PHP to Apache is issuing a 301 Redirection  
(i  
tested it with cURL from another host, and giving a network error in IE8  
and  
Chrome.  
Here I include the config files loaded in Nginx:

Nginx.conf  
user www-data;  
worker\_processes 1;

error\_log /var/log/nginx/error.log;  
pid /var/run/nginx.pid;

events {  
worker\_connections 1024;  
# multi\_accept on;  
}

http {  
include /etc/nginx/mime.types;

```
access_log /var/log/nginx/access.log;

sendfile on;
#tcp_nopush on;

#keepalive_timeout 0;
keepalive_timeout 65;
tcp_nodelay on;

gzip on;
gzip_disable "MSIE [1-6]\.(?!.*SV1)";

include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-available/*;

```

}

sites-available/www

server {  
listen 80 default;  
server\_name [blog.foo.com](http://blog.foo.com);

access\_log /var/log/nginx/foo.access.log;  
error\_log /var/log/nginx/foo.error.log;

location / {  
root /var/www2;  
index index.php;  
proxy\_pass [http://127.0.0.1:8080](http://127.0.0.1:8080);  
include /etc/nginx/conf.d/proxy.conf;  
}  
}

conf.d/proxy.conf

proxy\_redirect off;  
proxy\_set\_header Host $host;  
proxy\_set\_header X-Real-IP $remote\_addr;  
proxy\_set\_header X-Forwarded-For $proxy\_add\_x\_forwarded\_for;  
client\_max\_body\_size 10m;  
client\_body\_buffer\_size 128k;  
proxy\_connect\_timeout 90;  
proxy\_send\_timeout 90;  
proxy\_read\_timeout 90;  
proxy\_buffer\_size 16k;  
proxy\_buffers 32 16k;  
proxy\_busy\_buffers\_size 64k;

Now the -i from cURL in [blog.foo.com/index.php](http://blog.foo.com/index.php)  
HTTP/1.1 301 Moved Permanently  
Server: nginx/0.8.35  
Date: Sat, 10 Apr 2010 15:34:45 GMT  
Content-Type: text/html; charset=UTF-8  
Connection: keep-alive  
X-Powered-By: PHP/5.2.10-2ubuntu6  
X-Pingback: [http://127.0.0.1:81/xmlrpc.php](http://127.0.0.1:81/xmlrpc.php)  
Location: [http://blog.foo.com:81/](http://blog.foo.com:81/)  
Vary: Accept-Encoding  
Content-Length: 0

snip from log file  
“GET /index.php HTTP/1.1” 301 0 “-” “curl/7.19.5 (i486-pc-linux-gnu)  
libcurl/7.19.5 OpenSSL/0.9.8g zlib/1.2.3.3 libidn/1.15”

---

<div class="post-metadata">

**Author:** ![victor](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/v/3e96dc/32.png) [@victor](https://www.ruby-forum.com/u/victor)\
**Post date:** [April 10, 2010, 8:05pm UTC](https://www.ruby-forum.com/t/nginx-problem-with-reverse-proxying/186654/2 "2010-04-10T20:05:47Z")

</div>

Hello!

On Sat, Apr 10, 2010 at 05:36:19PM +0200, Victor wrote:

> Here I include the config files loaded in Nginx:  
> […]

> Now the -i from cURL in [blog.foo.com/index.php](http://blog.foo.com/index.php)  
> HTTP/1.1 301 Moved Permanently  
> Server: nginx/0.8.35  
> Date: Sat, 10 Apr 2010 15:34:45 GMT  
> Content-Type: text/html; charset=UTF-8  
> Connection: keep-alive  
> X-Powered-By: PHP/5.2.10-2ubuntu6  
> X-Pingback: [http://127.0.0.1:81/xmlrpc.php](http://127.0.0.1:81/xmlrpc.php)  
> Location: [http://blog.foo.com:81/](http://blog.foo.com:81/)

So, your php code returns 301 redirect. Probably it’s a good idea  
to look into your php code?..

Maxim D.
