$document_root variable not working

Thomas Krause toaster at chef-ingenieur.de
Thu May 24 21:45:07 UTC 2012


I'm running nginx 1.2.0 under FreeBSD 9.0.
I configured phpMyAdmin to execute unter
which is working fine, but php scripts outside
/pma I get "File not found."
(e.g. https://server/info.php)

this is my config:

location / {
     root   /usr/local/www/nginx;
     index  index.html index.php;

location /pma {
      root /usr/local/www;
      index index.php;

location ~ \.php$ {
     set $php_root $document_root;
     if ($request_uri ~* /pma) {
        set $php_root /usr/local/www;

     fastcgi_index  index.php;
     fastcgi_param  SCRIPT_FILENAME  $php_root$fastcgi_script_name;
     include /usr/local/etc/nginx/fastcgi_params

The problem is the config line
      set $php_root $document_root;
When I replace it with
      set $php_root /usr/local/www/nginx;
everything is okay. I found in the documentation,
that $document_root should contain the value
of "root", but obvious it isn't.

Any ideas whats wrong?


More information about the nginx mailing list