0

Converted a RAID 1 volume to RAID10. The file system appears to be exactly the same on the new RAID 10 volume as the previous RAID 1 volume.

For some reason PHP-FPM won't take a symbolic link to the config on the MDADM RAID10 anymore. So I copied the file from said RAID10 directly to /etc/php/php-fpm.d/ and tried again. And now no matter what, it returns "No valid script" for any request through FastCGI. I have no clue what the problem could be.

I suspect the two problems here are related as I suspect for some reason PHP-FPM's having trouble seeing my files on the RAID10...

Nginx server config:

server {
    listen 80;
    server_name (server name);

    client_max_body_size 2056M;

    access_log /var/log/nginx/dashboard.access.log;
    error_log /var/log/nginx/dashboard.error.log notice;
    access_log /var/log/nginx/dashboard.scripts.log scripts;

    root (project on RAID10)/www;
    index index.php;

    gzip             on;
    gzip_comp_level  3;
    gzip_types       text/plain text/css application/javascript image/*;

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

    # serve static files directly
    location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt)$ {
        access_log        off;
        expires           max;
    }

    location ~ [^/]\.php(/|$) {
        fastcgi_split_path_info ^(.+?\.php)(/.*)$;

        # Mitigate https://httpoxy.org/ vulnerabilities
        fastcgi_param HTTP_PROXY "";

        include fastcgi_params;

        fastcgi_pass localhost:9001;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param PHP_VALUE "error_log=/var/log/nginx/dashboard_php_errors.log";
        fastcgi_buffers 16 16k;
        fastcgi_buffer_size 32k;

    }
}

PHP-FPM config:

[dashboard]
user = (user who owns RAID10)
group = (group of said user)

listen = 127.0.0.1:9001

(everything else default)

Edit: Just to let people know, I have the system printing into the logs the full path it's looking for, and the full path is the correct one. For whatever reason, PHP-FPM can't seem to see inside the RAID-10. I tried moving it up to /home/(my home folder); I can load images I have there, but not PHP scripts; I get the same thing, "Primary Script Unknown".

  • 1
    Two options come to mind at first; a) NGINX does not allow symlinks, so add disable_symlinks off; under http{} , second option is if open_basedir value in PHP is set to something interesting. – Miuku Jan 07 '20 at 11:18
  • open_basedir has no value. I added disable_symlinks, but nothing changed. – Dark Phoenix Jan 08 '20 at 01:48

0 Answers0