通过sae的 AppConfig 进行url重写.可以进行修改,让直接通过网址URL访问Storage的地址.
仅需要在网站根目录下config.yaml进行以下规则的编辑:
– rewrite: if ( path ~ “^/wp-content/uploads/sites/2/(.+)$”) goto “img.php?d=wordpress&f=/uploads/$1”
根据上面的语句我们可以看到规则重定向,把Storage里面uploads的地址重定向到wp-content/uploads/sites/2/并且交由img.php进行处理。
关键性内容在于img这个文件.
fileExists($domain,$file)){
//文件存在
//获取文件后缀名
$info = pathinfo($file);
//如果后缀获取失败则默认为jpg
if(empty($info[‘extension’])){$info[‘extension’] = ‘jpg’;}
//输出文件头
$header = file_header($info[‘extension’]);
header(“{$header}”);
echo $s->read($domain,$file) ;
}else{
exit();
}
img文件存放于网站根目录下,可以看得出img文件里面对附件图片等进行了处理,重新获取了路径,这样就进行了完美的重定向,避免使用了Storage的地址.
使用完这个规则后Storage的防盗链则会生效,无法使用无论怎么设置.
评论
很不错。赞