Localização do phpmyadmin para o nginx

4

Eu instalei o nginx e o phpmyadmin. Eu configurei um domínio com esses parâmetros para testar o phpmyadmin:

server {
listen 80;
server_name example.com;

root /usr/share/phpmyadmin;
index index.php;
fastcgi_index index.php;

location ~ \.php$ {
include /etc/nginx/fastcgi.conf;
fastcgi_param SCRIPT_FILENAME /usr/share/phpmyadmin$fastcgi_script_name;
fastcgi_pass unix:/var/run/php5-fpm.sock;
}


}

E tudo funciona corretamente (se eu visitar o domínio, posso fazer login no phpmyadmin). O problema é que era apenas para testar o phpmyadmin, agora eu gostaria de mover isso para o meu site 'padrão'. Mas eu não consigo descobrir como fazer isso no / phpmyadmin. Aqui está a configuração para o site nginx 'default' (onde eu gostaria de colocar esta localização / phpmyadmin):

server {

server_name blabla;

access_log  /var/log/nginx/$host.access.log;
error_log   /var/log/nginx/error.log;

root    /var/www/default;
index   index.php index.html;

location / {
try_files $uri $uri/ index.php;
}  

location ~ \.php$ {
include /etc/nginx/fastcgi.conf;
fastcgi_pass unix:/var/run/php5-fpm.sock;
}

### NginX Status
location /nginx_status {
stub_status on;
access_log   off; 
}

### FPM Status
location ~ ^/(status|ping)$ {
fastcgi_pass unix:/var/run/php5-fpm.sock;
access_log      off;
}

}
    
por MultiformeIngegno 11.06.2012 / 01:22

2 respostas

10

Por mais estranho que pareça soar, a configuração "padrão" não funcionou para o phpMyAdmin do meu lado.

Aqui está o que acabei fazendo, agora trabalhando com sucesso em "/ phpmyadmin":

    location /phpmyadmin {
           root /usr/share/;
           index index.php index.html index.htm;
           location ~ ^/phpmyadmin/(.+\.php)$ {
                   try_files $uri =404;
                   root /usr/share/;
                   fastcgi_pass 127.0.0.1:9000;
                   fastcgi_index index.php;
                   fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                   include /etc/nginx/fastcgi_params;
           }
           location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
                   root /usr/share/;
           }
    }

Eu não sou um administrador experiente, e essa configuração precisa de limpeza, mas é um bom começo, espero.

    
por 12.06.2012 / 19:15
0

Não há nada de especial sobre o phpmyadmin; um bloco de localização padrão do PHP será suficiente:

location /phpmyadmin {
    root /usr/share/phpmyadmin;

    location ~ \.php$ {
        include /etc/nginx/fastcgi.conf;
        fastcgi_param SCRIPT_FILENAME /usr/share/phpmyadmin$fastcgi_script_name;
        fastcgi_pass unix:/var/run/php5-fpm.sock;
    }
}
    
por 11.06.2012 / 03:40

Tags