How to configure phpmyadmin with nginx ?
    SE7EN 
    k1_zeus at yahoo.com
       
    Mon Sep 14 11:51:09 MSD 2009
    
    
  
I don't know what tot say, here is my config file (after the sample with subdomain that works) but it still doesn't work. phpmyadmin is installed in /usr/share/phpmyadmin and site works fine, so it's no error in my config file. it works only when I create a new vhost file like this and access phpmyadmin as a subdomain
server {
    listen 80;
    server_name phpmyadmin.domainname.com;
    access_log  /home/apps/logs/phpmyadmin.access_log;
    error_log  /home/apps/logs/phpmyadmin.error_log;
    location / {
         root /usr/share/phpmyadmin;
         index index.php;
    }
    location ~ \.php$ {
        fastcgi_pass   127.0.0.1:8888;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /usr/share/phpmyadmin$fastcgi_script_name;
        include /etc/nginx/fastcgi.conf;
    }
}
vhost.conf
server {
            listen   80;
            server_name  www.mydomain.com;
                        #redirect www to non-www
            rewrite ^/(.*) http://mydomain.com/$1 permanent;
       }
server {
                        listen   80;
                        server_name mydomain.com;
            access_log /home/mydomain/log/access.log;
            error_log /home/mydomain/log/error.log;
            index index.php index.htm index.html;
location   ^~ /phpmyadmin/ {
  root /usr/share;
  include /usr/local/nginx/conf/fastcgi_params;
  fastcgi_pass  127.0.0:9002;
}
location /  {
                                root   /home/mydomain/public_html/;
                                index  index.php index.html;
                                expires 30d;
                                #stop image and files hotlinking
                                location ~* ^.+\.(gif|jpg|png|swf|flv|rar|zip|jpeg|css)$ {
                                valid_referers none blocked mydomain.com www.mydomain.com *.google.com *.yahoo.com;
                                if ($invalid_referer) {
                                return 444;
                                }
                                }
                                #joomla sef url's
                                if (!-e $request_filename) {
                                        rewrite  ^(.*)$  /index.php?q=$1  last;
                                        break;
                                                                }
                                        }
                                if ( $args ~ "mosConfig_[a-zA-Z_]{1,21}(=|\%3d)" ) {
                                set $args "";
rewrite ^.*$ http://$host/index.php last;
                                return 403;
                                }
                                if ( $args ~ "base64_encode.*\(.*\)" ) {
                                set $args "";
                                rewrite ^.*$ http://$host/index.php last;
                                return 403;
                                }
                                if ( $args ~ "(\<|%3C).*script.*(\>|%3E)" ) {
                                set $args "";
                                rewrite ^.*$ http://$host/index.php last;
                                return 403;
                                }
                                if ( $args ~ "GLOBALS(=|\[|\%[0-9A-Z]{0,2})" ) {
                                set $args "";
                                rewrite ^.*$ http://$host/index.php last;
                                return 403;
                                }
                                if ( $args ~ "_REQUEST(=|\[|\%[0-9A-Z]{0,2})" ) {
                                set $args "";
                                rewrite ^.*$ http://$host/index.php last;
                                return 403;
                                }
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9002
            location ~ \.php$
                                {
            fastcgi_pass 127.0.0.1:9002;
            fastcgi_index index.php;
            include /usr/local/nginx/conf/fastcgi_params;
            fastcgi_param SCRIPT_FILENAME /home/digitalfav/public_html/$fastcgi_script_name;
                        }
                        ## All other errors get the generic error page
                        error_page 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417
                 500 501 502 503 504 505 /error_page.html;
                        location  $document_root/error_page.html {
                        internal;
                 }
                 }
--- On Mon, 9/14/09, Ian Hobson <ian at ianhobson.co.uk> wrote:
From: Ian Hobson <ian at ianhobson.co.uk>
Subject: Re: How to configure phpmyadmin with nginx ?
To: nginx at sysoev.ru
Date: Monday, September 14, 2009, 12:52 AM
Hi se7en,
Your location line is incorrect and you may need a line to send php over also. Try the following inside your server directive.
index index.php index.htm index.html;
location   ^~ /phpmyadmin/ {
  root /usr/share;
  include /????/fastcgi_params;
  fastcgi_pass  127.0.0:9002;
}
location ~ \.php {
   include  /????/fastcgi_params;
   fastcgi_pass  127.0.0.1:9002;
}
Don't forget to replace the ??? with the correct path - mine is /etc/nginx/ and check that phpmyadmin
has been installed in /usr/share/phpmyadmin - or adjust the root.
Regards
Ian
SE7EN wrote:
> 
> I added this,I verify it, everything is correct, my site works fine but accessing http://mydomain.com/phpmyadmin still doesn't work, a 500 server errror appears.
> 
> location ~ /phpmyadmin/.*\.php$ {
>   root /usr/share/;
>   fastcgi_pass 127.0.0.1:9002;
>   fastcgi_index index.php;
>   include /usr/local/nginx/conf/fastcgi_params;
>   fastcgi_param SCRIPT_FILENAME /usr/share/phpmyadmin$fastcgi_script_name;
>   }
> 
>   location /phpmyadmin/ {
>   root /usr/share/;
>   index index.php;
>   }
> 
> 
      
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx/attachments/20090914/aed39d00/attachment.html>
    
    
More information about the nginx
mailing list