nginx try_files и множественные блоки расположения

nginx try_files и множественные блоки расположения

У меня есть 2 домена, каждый со своим корнем документов. Корень одного домена содержит папки pics и docs, к которым я хочу иметь доступ через другой домен. Поэтому domain1.com/pics/house.jpg и domain2.com/pics/house.jpg будут показывать одно и то же изображение.

Ниже приведен отрывок из файла конфигурации для domain2. Он не работает - я всегда получаю 404 при доступе к изображению в корне domain1 на domain2. Я буду рад любым предложениям о том, как переписать это, чтобы исправить это. Спасибо

root /home/admin/domain2.com/html;

index index.php index.html;

location /pics/ {
       root /home/admin/domain1.com;
}

location /docs/ {
       root /home/admin/domain1.com;
}

location / {
        try_files $uri $uri/ =404;
}

location ~ \.php$ {
       include snippets/fastcgi-php.conf;
       fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
}

решение1

Оказалось, мой код не работал в случаях, когда /pics/ содержал дополнительные папки. Использование следующего сработало.

location ^~ /pics/ {
       root /home/admin/domain1.com;
       # Queries beginning with /pics/ and then stops searching.
}

Связанный контент