Nginx fastcgi_pass, основная проблема неизвестного скрипта - PullRequest
0 голосов
/ 12 октября 2019

У меня проблема с тем, что в настоящее время мой nginx проксирует несколько удаленных серверов php-fpm. Мне нужен был путь / vcms, как показано ниже.

location ^~ /vcms {
    rewrite ^/vcms/?(.*)$ /vcms/public/$1 last;
       add_header X-debug-message "vcms1" always;
}

location ^~ /vcms/public {
    add_header X-debug-message "vcms2" always;
    #try_files $uri $uri/ /vcms/public/index.php$is_args$args;
    #try_files $uri /vcms/public/index.php$is_args$args;
     try_files $uri $uri/ /vcms/public/index.php?q=$uri&$args;
    index index.php index.html index.htm;

    alias /usr/share/nginx/hd-cmv2/public;
    location ~* \.php(/|$) {
    #rewrite /vcms/public/(.*)$ /$1 break;

    try_files $uri =404;

    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_pass my_remote_php:9000;
    fastcgi_index index.php;
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param PATH_INFO $fastcgi_path_info;
    }
}

Для этой конфигурации мой журнал ошибок nginx сказал:

"2019/10/12 10:44:21 [error] 4504#4504: *1 FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream, client: XXX, server: XXX, request: "GET /vcms/ HTTP/2.0", upstream: "fastcgi://XXX:9000", host: "iXXX"

Связана ли проблема с fastcgi_param? потому что я также использую эти директивы в другом месте / XYZ. Я пробовал некоторые из предыдущих решений, но все еще не работал. Я хотел бы получить помощь, большое спасибо!

...