將原來請求的URL加入到重寫規則中?

將原來請求的URL加入到重寫規則中?

他們與我們的託管提供者合作,添加了 nginx 規則來幫助我們阻止對特定資料夾中的文件的存取。基本上,如果使用者登入 WordPress 網站,他們就會獲得該檔案的存取權限。否則,它將重定向到登入 URLhttps://www.example.com/login/

這是目前正在實施的:https://gist.github.com/Garconis/6be796b51994c79010cb0c3a3cfedd86

set $bar 0;
set $becue 0;
if ( $request_uri ~* "wp-content/uploads/private" ) {
    set $bar 1;
} 
if ($http_cookie ~ "wordpress_logged_in") {
    set $becue 1;
}
set $barbecue "$bar:$becue";
if ($barbecue = "1:0") {
    rewrite ^/(.*) https://www.example.com/login/;
}

但是,我想更新 URL rewrite,改為:https://www.example.com/login?redirect_to=https://www.example.com/wp-content/uploads/private/super-secret-brochure.pdf

這樣,一旦使用者登錄,WordPress 就會自動將使用者重新導向回他們嘗試存取的檔案。

但是,如何正確更新重寫,使其包含嘗試存取的原始 URL?

是不是這麼簡單:

rewrite ^/(.*) https://www.example.com/login?redirect_to=https://www.example.com$request_uri;

相關內容