Автоматизированный прокси-сервер nginx с бэкэндами fastcgi

Не могу понять, как подключить jwilder / Nginx-прокси непосредственно к бэкэнду fastcgi. Так как я использую стек Docker, это соответствующий compose-файл:

php-fpm:
image: some/php-app
working_dir: /var/www/application
environment:
VIRTUAL_HOST: php-fpm.example
VIRTUAL_PROTO: fastcgi
VIRTUAL_PORT: 9000
VIRTUAL_ROOT: /var/www/application/public

Этот конфиг приводит к ошибке 404:

2018/10/30 07:58:13 [error] 304: *5357 FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream, client: 10.255.0.2, server: php-fpm.example, request: "GET /api/settings HTTP/2.0", upstream: "fastcgi://10.0.0.203:9000", host: "php-fpm.example"

Если я правильно понимаю ситуацию, чего-то подобного не хватает:

server {
root /var/www/application/public;
index index.php;

if (!-e $request_filename) {
rewrite ^.*$ /index.php last;
}

location ~ \.php$ {
fastcgi_pass php-fpm:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt  { access_log off; log_not_found off; }

}

Когда я помещаю этот файл местоположения в /etc/nginx/vhost.d/default_location или даже в /etc/nginx/vhost.d/ndomVIRTUAL_HOST automotive_location, я получаю сообщение об ошибке server directive is not allowed here, Когда я использую только «блок местоположения», я получаю ошибку 502 Bad Gateway.

Так как у меня есть несколько бэкэндов, которые в основном идентичны, некоторые настройки по умолчанию, которые покрывают большинство настроек, будут великолепны.

У кого-нибудь есть что-нибудь подобное?

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]