[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Konfiguration NGinX/PHP



Hallo,


ich versuche gerade, NGinX so zu konfigurieren, dass es den ersten Teil des Pfades abscheidet, wenn es ein PHP-Script an PHP-FPM weiterleitet. Die Konfig dazu sieht folgenderma�n aus:


log_format scripts '$document_root$fastcgi_script_name > $request';

access_log /var/log/nginx/scripts.log scripts;


server {

    listen 80;


    root /usr/share/nginx/html/;

    index index.php index.html index.htm;


    location / {

        return 406;

    }

   

    location  /simplesaml {

        location ~ \..*/.*\.php$ {

            return 406;

        }

        try_files $uri $uri/ =404;

       

        alias /usr/share/simplesamlphp/www;

       

        location ~ \.php(/|$) {

            include fastcgi_params;

            fastcgi_split_path_info ^/simplesaml/(.+?\.php)(/.+)$;

            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

            fastcgi_pass unix:/run/php/php7.4-fpm.sock;

            fastcgi_index index.php;

        }

    }

}


Ich bin davon ausgegangen, dass die fastcgi_split_path_info unter $1 dann das Script liefert, unter $2 all das, was nach dem Script und einem weiteren / kommt; aber leider ist das laut log nicht der Fall. SCRIPT_FILENAME wird immer auf /usr/share/simplesamlphp/www/simplesaml/${SCRIPTFILE}.php gesetzt und nicht wie gew� auf /usr/share/simplesamlphp/www/${SCRIPTFILE}.php


$ docker exec 3b tail -f /var/log/nginx/scripts.log ���
/usr/share/simplesamlphp/www/simplesaml/index.php > GET /simplesaml/ HTTP/1.1


Wo genau steckt mein Denkfehler? Ich sehe ihn gerade nicht.


Das ganze findet in einem NGinX-Container statt; dieser basiert auf Debian stable (Bullseye).


Lieben Dank!


--

Mit freundlichen Gr�p>

Jan Kohnert


Reply to: