• Debian 11 is approaching its end-of-life (vendor EOL date - August 31, 2026). Plesk Obsidian 18.0.80 will be the last release to support it.
    If you are running Plesk Obsidian on Debian 11, we recommend you upgrade those servers to Debian 12 using our dist-upgrade tool.
  • We plan to deprecate and remove the support for XML RPC protocol versions earlier than 1.6.9.1 in Plesk Obsidian 18.0.82. We strongly recommend that you update all existing integrations using earlier versions of the XML RPC protocol to comply with the version 1.6.9.1 specification.

Resolved "FPM application served by nginx" results in empty PATH_INFO

lukas_we

New Pleskian
Hello,

I have a server using the "FPM application served by nginx" option, but this results in an empty $_SERVER['PATH_INFO'] variable. The bug comes from the file located at the following position on my server:
/opt/psa/admin/conf/templates/default/domain/service/fpm.php

In that file, fastcgi_split_path_info is used set the $fastcgi_path_info variable, which is subsequently used to pass the path info to the fpm application via:
Code:
fastcgi_param PATH_INFO $fastcgi_path_info
However, between invoking fastcgi_split_path_info and fastcgi_param, try_files is called. This sets $fastcgi_path_info to an empty string (see #321 (try_files & $fastcgi_path_info) – nginx) with the effect, that the real path info never gets passed to the fpm application.

The following patch fixes the problem:
Code:
@@ -5,8 +5,9 @@
  */
 ?>
         fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
+        set $path_info $fastcgi_path_info;
         try_files $uri $fastcgi_script_name =404;
-        fastcgi_param PATH_INFO $fastcgi_path_info;
+        fastcgi_param PATH_INFO $path_info;
         fastcgi_pass "<?php echo $VAR->domain->physicalHosting->fpmSocket ?>";
         include /etc/nginx/fastcgi.conf;

Best regards,
Lukas
 
Back
Top