他们与我们的托管服务提供商合作,添加了一条 nginx 规则来帮助我们阻止对特定文件夹中文件的访问。基本上,如果用户登录了 WordPress 网站,它就会授予他们访问该文件的权限。否则,它会将他们重定向到https://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;