то, что я хочу сделать, это обратный прокси-каталог b.com/c/d/1.jpg
с a.com/1.jpg
location / {
proxy_ssl_server_name on;
if (!-e $request_filename) {
# below will cause error: cannot have URI part in location given by regular expression, or inside named location, or inside \"if\" statement,
# proxy_pass https://b.com/c/d;
proxy_pass https://b.com;
}
}
кто-нибудь может помочь? как это сделать правильно. СПАСИБО.
Замените if (!-e $request_filename)
оператором try_files и поместите proxy_pass
в именованное место . Используйте rewrite...break, чтобы настроить URI до того, как он будет передан вверх по течению.
Например:
location / {
try_files $uri $uri/ @proxy;
}
location @proxy {
rewrite ^/(.*)$ /c/d/$1 break;
proxy_ssl_server_name on;
proxy_pass https://b.com;
}