server {
listen 80;
root /var/www/html/backend/web;
index index.php;
access_log /var/www/html/access.log;
error_log /var/www/html/error.log;
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass yii2-fpm:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;
}
}
У вас получалось настроить работу приложения при работе nginx, php-fpm в разных docker контейнерах?
Как я понял assets формируются при запросе в php-fpm контейнере,
и если не использовать общий volume для nginx, php-fpm контейнеров, то контейнер nginx не получит доступ к сгенерированным внутри контейнера php-fpm файлам assets
server {
listen 80;
server_name _;
access_log /var/log/nginx/bld_gui_access.log;
error_log /var/log/nginx/bld_gui_error.log;
root /var/www;
index index.html;
location / {
try_files $uri $uri/ /index.html;
}
location /api_v1/ {
# root /var/www/html/api_v1/web;
rewrite ^/api_v1/(.*)$ /var/www/html/api_v1/web/index.php?r=$1;
# index index.php;
# try_files $uri $uri/ /var/www/html/api_v1/web/index.php$is_args$args;
# try_files $uri $uri/ /index.php$is_args$args;
}
location ~ [^/]\.php(/|$) {
# location ~ \.php$ {
root /var/www/html/web;
include fastcgi_params;
# fastcgi_split_path_info ^(.+?\.php)(/.*)$;
fastcgi_pass bld-fpm:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/html/web$fastcgi_script_name;
# try_files $uri =404;
}
}
chdir = /var/www/html/web
172.31.0.1 - - [30/Dec/2022:18:58:33 +0000] "GET /api_v1/game/list HTTP/1.1" 404 36 "http://127.0.0.1:8080/list" "Mozilla/5.0 (X11; Linux x86_64; rv:107.0) Gecko/20100101 Firefox/107.0"
2022/12/30 18:58:33 [error] 31#31: *1 FastCGI sent in stderr: "Unable to open primary script: /var/www/html/web/var/www/html/api_v1/web/index.php (No such file or directory)" while reading response header from upstream, client: 172.31.0.1, server: _, request: "GET /api_v1/game/list HTTP/1.1", upstream: "fastcgi://172.31.0.4:9000", host: "127.0.0.1:8080", referrer: "http://127.0.0.1:8080/list"
127.0.0.1 - 30/Dec/2022:18:58:33 +0000 "GET /var/www/html/api_v1/web/index.php" 404
server {
listen 80;
server_name _;
access_log /var/log/nginx/bld_gui_access.log;
error_log /var/log/nginx/bld_gui_error.log;
root /var/www;
index index.html;
location / {
try_files $uri $uri/ /index.html;
}
location /api_v1/ {
# root /var/www/html/api_v1/web;
# rewrite ^/api_v1/(.*)$ /var/www/html/web/index.php?r=$1;
# index index.php;
try_files $uri $uri/ /var/www/html/web/index.php$is_args$args;
# try_files $uri $uri/ /var/www/html/web/index.php?$query_string;
}
# location ~ [^/]\.php(/|$) {
location ~ \.php$ {
include fastcgi_params;
# fastcgi_split_path_info ^(.+?\.php)(/.*)$;
fastcgi_split_path_info ^(.+\.php)(.*)$;
fastcgi_pass bld-fpm:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;
# try_files $uri =404;
}
}