HowtoForge Forums | HowtoForge - Linux Howtos and Tutorials

HowtoForge Forums | HowtoForge - Linux Howtos and Tutorials (http://www.howtoforge.com/forums/index.php)
-   Server Operation (http://www.howtoforge.com/forums/forumdisplay.php?f=5)
-   -   NGINX reverse proxy to apache - Settings? (http://www.howtoforge.com/forums/showthread.php?t=55869)

agriz 22nd January 2012 12:51

NGINX reverse proxy to apache - Settings?
 
PHP Code:

####################################################################### 

# This is the main Nginx configuration file. 

# More information about the configuration options is available on 
#   * the English wiki - http://wiki.nginx.org/Main 
#   * the Russian documentation - http://sysoev.ru/nginx/ 

####################################################################### 

#---------------------------------------------------------------------- 
# Main Module - directives that cover basic functionality 

#   http://wiki.nginx.org/NginxHttpMainModule 

#---------------------------------------------------------------------- 

user              nginx
worker_processes  2

error_log  /var/log/nginx/error.log
#error_log  /var/log/nginx/error.log  notice; 
#error_log  /var/log/nginx/error.log  info; 

pid        /var/run/nginx.pid


#---------------------------------------------------------------------- 
# Events Module 

#   http://wiki.nginx.org/NginxHttpEventsModule 

#---------------------------------------------------------------------- 

events 
    
worker_connections  4096



#---------------------------------------------------------------------- 
# HTTP Core Module 

#   http://wiki.nginx.org/NginxHttpCoreModule 

#---------------------------------------------------------------------- 

http 
    include       /
etc/nginx/mime.types
    
default_type  application/octet-stream

    
log_format  main  '$remote_addr - $remote_user [$time_local] "$request" ' 
                      '$status $body_bytes_sent "$http_referer" ' 
                      '"$http_user_agent" "$http_x_forwarded_for"'


    
access_log  /var/log/nginx/access.log  main

    
sendfile        on
    
#tcp_nopush     on; 
    
tcp_nodelay     on

    
#keepalive_timeout  0; 
    
keepalive_timeout  65

    
gzip  on

    

    # The default server 
    # 
    
server 
        
listen      80
        
server_name  domain.com www.domain.com

        
#charset koi8-r; 

        #access_log  logs/host.access.log  main; 

       # location / { 
           # root   /usr/share/nginx/html; 
           # index  index.html index.htm; 
       #} 
        
location / { 
                
proxy_pass http://127.0.0.1:8080/; 
                
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
                
proxy_connect_timeout 90
                
proxy_send_timeout 90
                
proxy_read_timeout 90
                
client_max_body_size 10m
                
client_body_buffer_size 128k
                
proxy_buffer_size 4k
                
proxy_buffers 4 32k
                
proxy_busy_buffers_size 64k
                
root /var/www/html
                
index index.html index.htm index.php
        } 

        
error_page  404              /var/www/html/404.html
        
location = /404.html 
            
root   /var/www/html
        } 

        
# redirect server error pages to the static page /50x.html 
        # 
        
error_page   500 502 503 504  /50x.html
        
location = /50x.html 
            
root   /var/www/html
        } 

        
# proxy the PHP scripts to Apache listening on 127.0.0.1:80 
        # 
        #location ~ \.php$ { 
        #    proxy_pass   http://127.0.0.1; 
        #} 

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 
        # 
        #location ~ \.php$ { 
        #    root           html; 
        #    fastcgi_pass   127.0.0.1:9000; 
        #    fastcgi_index  index.php; 
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name; 
        #    include        fastcgi_params; 
        #} 

        # deny access to .htaccess files, if Apache's document root 
        # concurs with nginx's one 
        # 
        #location ~ /\.ht { 
        #    deny  all; 
        #} 
        
location ~* ^.+.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|wav|bmp|rtf|js)$ {root /var/www/html;} 
    } 

    
# Load config files from the /etc/nginx/conf.d directory 
    
include /etc/nginx/conf.d/*.conf; 



This is the configuration.
But it seems there is some problem on this.

ip.address/some.html -- always throws 404 error
ip.address/some.php -- works good. But it seems both server are handling this request and the loading is very slow.

What have i done wrongly?
I used http://www.howtoforge.com/reduce-apa...-nginx-rhel5.2
using centos 6 64 bit.

Installed in the following way
yum install nginx || yum install httpd

falko 23rd January 2012 11:07

Did you check the nginx error log?

agriz 23rd January 2012 11:12

Quote:

Originally Posted by falko (Post 272103)
Did you check the nginx error log?

Thanks for the reply.
How do i know the reverse proxy is working correctly?

This is what i have found after making some changes.

Apache Access log : Contains request for php only.
Nginx Access log : Contains request for php and images, css, javascript.

I think nginx is not configured to run php.
I did yum install nginx.

Is reverse proxy working correctly then?

yum install phpmyadmin.

*** PHPMYADMIN is working, but unable to upload sql files. Icons in phpmyadmin is not working.

Thanks for helping me.

I have disabled php_cli module in apache.
<?php echo phpinfo(); ?> said, apache is running both php_cli and php_fcgid
So i disabled php_cli is that correct?

Thanks


All times are GMT +2. The time now is 14:04.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2014, vBulletin Solutions, Inc.